@scriptc/compiler 0.4.4 → 0.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ambient/scriptc-node-fallback.d.ts +198 -44
- package/ambient/scriptc-overrides.d.ts +21 -0
- package/dist/backend/executable-features.js +3 -0
- package/dist/backend/executable-features.js.map +1 -1
- package/dist/backend/library-pack.js +2 -1
- package/dist/backend/library-pack.js.map +1 -1
- package/dist/backend/linker.js +11 -1
- package/dist/backend/linker.js.map +1 -1
- package/dist/backend/lld.d.ts +9 -0
- package/dist/backend/lld.js +48 -0
- package/dist/backend/lld.js.map +1 -0
- package/dist/backend/lld.test.d.ts +1 -0
- package/dist/backend/lld.test.js +53 -0
- package/dist/backend/lld.test.js.map +1 -0
- package/dist/backend/llvm/appended-array-literals.d.ts +11 -1
- package/dist/backend/llvm/appended-array-literals.js +29 -0
- package/dist/backend/llvm/appended-array-literals.js.map +1 -1
- package/dist/backend/llvm/blocks.js +10 -1
- package/dist/backend/llvm/blocks.js.map +1 -1
- package/dist/backend/llvm/bytes-alias.d.ts +13 -4
- package/dist/backend/llvm/bytes-alias.js +16 -5
- package/dist/backend/llvm/bytes-alias.js.map +1 -1
- package/dist/backend/llvm/bytes-bounds.d.ts +5 -1
- package/dist/backend/llvm/bytes-bounds.js +199 -2
- package/dist/backend/llvm/bytes-bounds.js.map +1 -1
- package/dist/backend/llvm/bytes-loop-versions.d.ts +45 -3
- package/dist/backend/llvm/bytes-loop-versions.js +238 -20
- package/dist/backend/llvm/bytes-loop-versions.js.map +1 -1
- package/dist/backend/llvm/bytes-loop-versions.test.js +11 -4
- package/dist/backend/llvm/bytes-loop-versions.test.js.map +1 -1
- package/dist/backend/llvm/call-lifetimes.d.ts +8 -2
- package/dist/backend/llvm/call-lifetimes.js +87 -18
- package/dist/backend/llvm/call-lifetimes.js.map +1 -1
- package/dist/backend/llvm/call-lifetimes.test.js +132 -0
- package/dist/backend/llvm/call-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/classes.d.ts +3 -2
- package/dist/backend/llvm/classes.js +4 -4
- package/dist/backend/llvm/classes.js.map +1 -1
- package/dist/backend/llvm/counted-loops.d.ts +14 -2
- package/dist/backend/llvm/counted-loops.js +54 -5
- package/dist/backend/llvm/counted-loops.js.map +1 -1
- package/dist/backend/llvm/debug-info.d.ts +42 -1
- package/dist/backend/llvm/debug-info.js +70 -1
- package/dist/backend/llvm/debug-info.js.map +1 -1
- package/dist/backend/llvm/dense-array-loops.js +2 -2
- package/dist/backend/llvm/dense-array-loops.js.map +1 -1
- package/dist/backend/llvm/dense-array-loops.test.js +1 -0
- package/dist/backend/llvm/dense-array-loops.test.js.map +1 -1
- package/dist/backend/llvm/dyn.d.ts +65 -8
- package/dist/backend/llvm/dyn.js +375 -40
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emit-function.js +28 -8
- package/dist/backend/llvm/emit-function.js.map +1 -1
- package/dist/backend/llvm/emit-journal.d.ts +8 -4
- package/dist/backend/llvm/emit-journal.js +75 -5
- package/dist/backend/llvm/emit-journal.js.map +1 -1
- package/dist/backend/llvm/emit-module.d.ts +4 -0
- package/dist/backend/llvm/emit-module.js +58 -23
- package/dist/backend/llvm/emit-module.js.map +1 -1
- package/dist/backend/llvm/emit-statements.js +297 -28
- package/dist/backend/llvm/emit-statements.js.map +1 -1
- package/dist/backend/llvm/emitter.d.ts +134 -13
- package/dist/backend/llvm/emitter.js +514 -87
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/expr-bytes.d.ts +6 -4
- package/dist/backend/llvm/expr-bytes.js +31 -8
- package/dist/backend/llvm/expr-bytes.js.map +1 -1
- package/dist/backend/llvm/expr-calls.js +13 -11
- package/dist/backend/llvm/expr-calls.js.map +1 -1
- package/dist/backend/llvm/expr-containers.d.ts +11 -0
- package/dist/backend/llvm/expr-containers.js +87 -9
- package/dist/backend/llvm/expr-containers.js.map +1 -1
- package/dist/backend/llvm/expr-context.d.ts +3 -0
- package/dist/backend/llvm/expr-control.js +83 -0
- package/dist/backend/llvm/expr-control.js.map +1 -1
- package/dist/backend/llvm/expr-dynamic.d.ts +1 -1
- package/dist/backend/llvm/expr-dynamic.js +22 -4
- package/dist/backend/llvm/expr-dynamic.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.js +107 -9
- package/dist/backend/llvm/expr-primitives.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.js +95 -22
- package/dist/backend/llvm/expr-stream-bridges.js.map +1 -1
- package/dist/backend/llvm/forked-analysis.d.ts +8 -0
- package/dist/backend/llvm/forked-analysis.js +43 -0
- package/dist/backend/llvm/forked-analysis.js.map +1 -0
- package/dist/backend/llvm/integer-values.d.ts +7 -0
- package/dist/backend/llvm/integer-values.js +42 -2
- package/dist/backend/llvm/integer-values.js.map +1 -1
- package/dist/backend/llvm/integer-views.d.ts +2 -1
- package/dist/backend/llvm/integer-views.js +12 -1
- package/dist/backend/llvm/integer-views.js.map +1 -1
- package/dist/backend/llvm/js-ic.d.ts +4 -0
- package/dist/backend/llvm/js-ic.js +133 -15
- package/dist/backend/llvm/js-ic.js.map +1 -1
- package/dist/backend/llvm/layouts.d.ts +1 -0
- package/dist/backend/llvm/layouts.js.map +1 -1
- package/dist/backend/llvm/lazy-captures.d.ts +6 -1
- package/dist/backend/llvm/lazy-captures.js +10 -5
- package/dist/backend/llvm/lazy-captures.js.map +1 -1
- package/dist/backend/llvm/lib-abi.d.ts +5 -0
- package/dist/backend/llvm/lib-abi.js +19 -0
- package/dist/backend/llvm/lib-abi.js.map +1 -1
- package/dist/backend/llvm/lib-dispatch.js +128 -42
- package/dist/backend/llvm/lib-dispatch.js.map +1 -1
- package/dist/backend/llvm/lib-filesystem.d.ts +10 -0
- package/dist/backend/llvm/lib-filesystem.js +32 -0
- package/dist/backend/llvm/lib-filesystem.js.map +1 -1
- package/dist/backend/llvm/lib-http2.js +2 -2
- package/dist/backend/llvm/lib-http2.js.map +1 -1
- package/dist/backend/llvm/lib-network.js +2 -0
- package/dist/backend/llvm/lib-network.js.map +1 -1
- package/dist/backend/llvm/lib-process.js +11 -0
- package/dist/backend/llvm/lib-process.js.map +1 -1
- package/dist/backend/llvm/lib-shared.js +43 -0
- package/dist/backend/llvm/lib-shared.js.map +1 -1
- package/dist/backend/llvm/lib-tls.js +28 -3
- package/dist/backend/llvm/lib-tls.js.map +1 -1
- package/dist/backend/llvm/local-union-storage.test.js +2 -1
- package/dist/backend/llvm/local-union-storage.test.js.map +1 -1
- package/dist/backend/llvm/loop-array-borrows.d.ts +4 -1
- package/dist/backend/llvm/loop-array-borrows.js +11 -5
- package/dist/backend/llvm/loop-array-borrows.js.map +1 -1
- package/dist/backend/llvm/map-entry-fusion.d.ts +5 -3
- package/dist/backend/llvm/map-entry-fusion.js +20 -11
- package/dist/backend/llvm/map-entry-fusion.js.map +1 -1
- package/dist/backend/llvm/map-entry-fusion.test.js +14 -6
- package/dist/backend/llvm/map-entry-fusion.test.js.map +1 -1
- package/dist/backend/llvm/map-number-lookup.d.ts +16 -6
- package/dist/backend/llvm/map-number-lookup.js +41 -9
- package/dist/backend/llvm/map-number-lookup.js.map +1 -1
- package/dist/backend/llvm/map-number-lookup.test.js +70 -2
- package/dist/backend/llvm/map-number-lookup.test.js.map +1 -1
- package/dist/backend/llvm/map-read-lifetimes.d.ts +25 -2
- package/dist/backend/llvm/map-read-lifetimes.js +136 -6
- package/dist/backend/llvm/map-read-lifetimes.js.map +1 -1
- package/dist/backend/llvm/map-read-lifetimes.test.js +8 -3
- package/dist/backend/llvm/map-read-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/nullable-unions.d.ts +5 -0
- package/dist/backend/llvm/nullable-unions.js +29 -2
- package/dist/backend/llvm/nullable-unions.js.map +1 -1
- package/dist/backend/llvm/nullable-unions.test.js +25 -1
- package/dist/backend/llvm/nullable-unions.test.js.map +1 -1
- package/dist/backend/llvm/record-union-keys.test.d.ts +1 -0
- package/dist/backend/llvm/record-union-keys.test.js +161 -0
- package/dist/backend/llvm/record-union-keys.test.js.map +1 -0
- package/dist/backend/llvm/serialized-ir-emission.test.js +2 -0
- package/dist/backend/llvm/serialized-ir-emission.test.js.map +1 -1
- package/dist/backend/llvm/shapes.d.ts +4 -5
- package/dist/backend/llvm/shapes.js +104 -51
- package/dist/backend/llvm/shapes.js.map +1 -1
- package/dist/backend/llvm/shapes.test.js +14 -2
- package/dist/backend/llvm/shapes.test.js.map +1 -1
- package/dist/backend/llvm/speculative-integers.d.ts +50 -3
- package/dist/backend/llvm/speculative-integers.js +411 -24
- package/dist/backend/llvm/speculative-integers.js.map +1 -1
- package/dist/backend/llvm/speculative-integers.test.js +103 -1
- package/dist/backend/llvm/speculative-integers.test.js.map +1 -1
- package/dist/backend/llvm/split.d.ts +10 -1
- package/dist/backend/llvm/split.js +243 -59
- package/dist/backend/llvm/split.js.map +1 -1
- package/dist/backend/llvm/split.test.js +92 -13
- package/dist/backend/llvm/split.test.js.map +1 -1
- package/dist/backend/llvm/stack-objects.test.js +3 -2
- package/dist/backend/llvm/stack-objects.test.js.map +1 -1
- package/dist/backend/llvm/string-lifetimes.test.js +1 -1
- package/dist/backend/llvm/string-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/string-reads.d.ts +13 -0
- package/dist/backend/llvm/string-reads.js +22 -0
- package/dist/backend/llvm/string-reads.js.map +1 -1
- package/dist/backend/llvm/string-slices.d.ts +36 -2
- package/dist/backend/llvm/string-slices.js +308 -12
- package/dist/backend/llvm/string-slices.js.map +1 -1
- package/dist/backend/llvm/string-slices.test.js +182 -3
- package/dist/backend/llvm/string-slices.test.js.map +1 -1
- package/dist/backend/llvm/string-unit-versions.d.ts +11 -0
- package/dist/backend/llvm/string-unit-versions.js +191 -0
- package/dist/backend/llvm/string-unit-versions.js.map +1 -0
- package/dist/backend/llvm/string-unit-versions.test.d.ts +1 -0
- package/dist/backend/llvm/string-unit-versions.test.js +117 -0
- package/dist/backend/llvm/string-unit-versions.test.js.map +1 -0
- package/dist/backend/llvm/test-boxed-unions.d.ts +5 -2
- package/dist/backend/llvm/test-boxed-unions.js +24 -8
- package/dist/backend/llvm/test-boxed-unions.js.map +1 -1
- package/dist/backend/llvm/unwind-abi.d.ts +52 -0
- package/dist/backend/llvm/unwind-abi.js +498 -0
- package/dist/backend/llvm/unwind-abi.js.map +1 -0
- package/dist/backend/llvm/unwind-abi.test.d.ts +1 -0
- package/dist/backend/llvm/unwind-abi.test.js +255 -0
- package/dist/backend/llvm/unwind-abi.test.js.map +1 -0
- package/dist/backend/llvm/wrapping-sums.d.ts +14 -10
- package/dist/backend/llvm/wrapping-sums.js +31 -14
- package/dist/backend/llvm/wrapping-sums.js.map +1 -1
- package/dist/backend/loop-polls.d.ts +6 -0
- package/dist/backend/loop-polls.js +24 -0
- package/dist/backend/loop-polls.js.map +1 -1
- package/dist/backend/may-throw.js +8 -8
- package/dist/backend/may-throw.js.map +1 -1
- package/dist/backend/native/contracts.d.ts +12 -2
- package/dist/backend/native/executable.js +48 -6
- package/dist/backend/native/executable.js.map +1 -1
- package/dist/backend/native/library.js +4 -3
- package/dist/backend/native/library.js.map +1 -1
- package/dist/backend/native/program-shards.d.ts +2 -2
- package/dist/backend/native/program-shards.js +2 -2
- package/dist/backend/native/program-shards.js.map +1 -1
- package/dist/backend/native/runtime-inputs.d.ts +1 -1
- package/dist/backend/native/runtime-inputs.js +4 -1
- package/dist/backend/native/runtime-inputs.js.map +1 -1
- package/dist/backend/native/vendor.d.ts +1 -1
- package/dist/backend/native/vendor.js +1 -1
- package/dist/backend/native/vendor.js.map +1 -1
- package/dist/backend/native-codegen.d.ts +3 -1
- package/dist/backend/native-codegen.js +4 -3
- package/dist/backend/native-codegen.js.map +1 -1
- package/dist/backend/native-link-info-core.d.ts +8 -0
- package/dist/backend/native-link-info-core.js.map +1 -1
- package/dist/backend/native-profile.d.ts +14 -0
- package/dist/backend/native-profile.js +28 -0
- package/dist/backend/native-profile.js.map +1 -1
- package/dist/backend/native-profile.test.js +8 -1
- package/dist/backend/native-profile.test.js.map +1 -1
- package/dist/backend/native-toolchain.test.js +11 -11
- package/dist/backend/native-toolchain.test.js.map +1 -1
- package/dist/backend/runtime-abi.d.ts +2 -2
- package/dist/backend/runtime-abi.js +2 -2
- package/dist/backend/runtime-pack-core.d.ts +3 -1
- package/dist/backend/runtime-pack-core.js +2 -0
- package/dist/backend/runtime-pack-core.js.map +1 -1
- package/dist/backend/runtime-pack-native.d.ts +17 -5
- package/dist/backend/runtime-pack-native.js +186 -14
- package/dist/backend/runtime-pack-native.js.map +1 -1
- package/dist/backend/runtime-pack-native.test.js +160 -3
- package/dist/backend/runtime-pack-native.test.js.map +1 -1
- package/dist/backend/runtime-pack-targets.test.js +2 -1
- package/dist/backend/runtime-pack-targets.test.js.map +1 -1
- package/dist/backend/runtime-pack.test.js +2 -1
- package/dist/backend/runtime-pack.test.js.map +1 -1
- package/dist/backend/vendor-archives.d.ts +4 -1
- package/dist/backend/vendor-archives.js +78 -4
- package/dist/backend/vendor-archives.js.map +1 -1
- package/dist/backend/vendor-inputs.d.ts +3 -1
- package/dist/backend/vendor-inputs.js +3 -1
- package/dist/backend/vendor-inputs.js.map +1 -1
- package/dist/backend/warm-cache.js +1 -0
- package/dist/backend/warm-cache.js.map +1 -1
- package/dist/cli/command.js +78 -11
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/usage.d.ts +22 -1
- package/dist/cli/usage.js +33 -3
- package/dist/cli/usage.js.map +1 -1
- package/dist/compat/fetch-profile.d.ts +15 -6
- package/dist/compat/fetch-profile.js +519 -498
- package/dist/compat/fetch-profile.js.map +1 -1
- package/dist/compile-types.d.ts +7 -0
- package/dist/contracts/int32-elements.js +2 -1
- package/dist/contracts/int32-elements.js.map +1 -1
- package/dist/coverage/report.d.ts +14 -3
- package/dist/coverage/report.js +216 -0
- package/dist/coverage/report.js.map +1 -1
- package/dist/coverage/surface-manifest.js +25 -25
- package/dist/coverage/surface-manifest.js.map +1 -1
- package/dist/coverage/verdict-cache.d.ts +2 -0
- package/dist/coverage/verdict-cache.js +10 -1
- package/dist/coverage/verdict-cache.js.map +1 -1
- package/dist/diagnostics/diagnostic.d.ts +19 -0
- package/dist/diagnostics/diagnostic.js +52 -1
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/diagnostics/envelope.d.ts +54 -0
- package/dist/diagnostics/envelope.js +7 -1
- package/dist/diagnostics/envelope.js.map +1 -1
- package/dist/diagnostics/render.d.ts +7 -0
- package/dist/diagnostics/render.js +15 -4
- package/dist/diagnostics/render.js.map +1 -1
- package/dist/executable/executable-cache.d.ts +3 -0
- package/dist/executable/executable-cache.js +1 -0
- package/dist/executable/executable-cache.js.map +1 -1
- package/dist/executable/executable-cache.test.js +1 -0
- package/dist/executable/executable-cache.test.js.map +1 -1
- package/dist/executable/prepare.js +5 -1
- package/dist/executable/prepare.js.map +1 -1
- package/dist/frontend/analysis.js +26 -2
- package/dist/frontend/analysis.js.map +1 -1
- package/dist/frontend/fork-target.js +67 -1
- package/dist/frontend/fork-target.js.map +1 -1
- package/dist/frontend/fork-target.test.js +43 -0
- package/dist/frontend/fork-target.test.js.map +1 -1
- package/dist/frontend/input-tracker.d.ts +4 -1
- package/dist/frontend/input-tracker.js +42 -4
- package/dist/frontend/input-tracker.js.map +1 -1
- package/dist/frontend/input-tracker.test.js +45 -0
- package/dist/frontend/input-tracker.test.js.map +1 -1
- package/dist/frontend/lowering/abstract-equality.js +38 -1
- package/dist/frontend/lowering/abstract-equality.js.map +1 -1
- package/dist/frontend/lowering/argument-counts.d.ts +36 -0
- package/dist/frontend/lowering/argument-counts.js +201 -0
- package/dist/frontend/lowering/argument-counts.js.map +1 -0
- package/dist/frontend/lowering/array-values.d.ts +27 -0
- package/dist/frontend/lowering/array-values.js +112 -0
- package/dist/frontend/lowering/array-values.js.map +1 -1
- package/dist/frontend/lowering/binding-analysis.d.ts +3 -0
- package/dist/frontend/lowering/binding-analysis.js +9 -3
- package/dist/frontend/lowering/binding-analysis.js.map +1 -1
- package/dist/frontend/lowering/builtin-namespaces.d.ts +13 -0
- package/dist/frontend/lowering/builtin-namespaces.js +238 -0
- package/dist/frontend/lowering/builtin-namespaces.js.map +1 -0
- package/dist/frontend/lowering/builtins/compression.d.ts +4 -3
- package/dist/frontend/lowering/builtins/compression.js +86 -5
- package/dist/frontend/lowering/builtins/compression.js.map +1 -1
- package/dist/frontend/lowering/builtins/date-classes.js +17 -1
- package/dist/frontend/lowering/builtins/date-classes.js.map +1 -1
- package/dist/frontend/lowering/builtins/dates.d.ts +19 -5
- package/dist/frontend/lowering/builtins/dates.js +159 -8
- package/dist/frontend/lowering/builtins/dates.js.map +1 -1
- package/dist/frontend/lowering/builtins/filesystem-calls.js +26 -1
- package/dist/frontend/lowering/builtins/filesystem-calls.js.map +1 -1
- package/dist/frontend/lowering/builtins/fs-streams.d.ts +4 -0
- package/dist/frontend/lowering/builtins/fs-streams.js +24 -1
- package/dist/frontend/lowering/builtins/fs-streams.js.map +1 -1
- package/dist/frontend/lowering/builtins/json.d.ts +4 -1
- package/dist/frontend/lowering/builtins/json.js +9 -3
- package/dist/frontend/lowering/builtins/json.js.map +1 -1
- package/dist/frontend/lowering/builtins/module-bindings.d.ts +6 -0
- package/dist/frontend/lowering/builtins/module-bindings.js +23 -1
- package/dist/frontend/lowering/builtins/module-bindings.js.map +1 -1
- package/dist/frontend/lowering/builtins/module-resolution.d.ts +5 -0
- package/dist/frontend/lowering/builtins/module-resolution.js +95 -4
- package/dist/frontend/lowering/builtins/module-resolution.js.map +1 -1
- package/dist/frontend/lowering/builtins/promises.js +144 -1
- package/dist/frontend/lowering/builtins/promises.js.map +1 -1
- package/dist/frontend/lowering/builtins/readline.d.ts +5 -1
- package/dist/frontend/lowering/builtins/readline.js +22 -11
- package/dist/frontend/lowering/builtins/readline.js.map +1 -1
- package/dist/frontend/lowering/builtins/reflection.d.ts +4 -1
- package/dist/frontend/lowering/builtins/reflection.js +41 -1
- package/dist/frontend/lowering/builtins/reflection.js.map +1 -1
- package/dist/frontend/lowering/builtins/text-codecs.js +31 -2
- package/dist/frontend/lowering/builtins/text-codecs.js.map +1 -1
- package/dist/frontend/lowering/builtins/webassembly.js +4 -1
- package/dist/frontend/lowering/builtins/webassembly.js.map +1 -1
- package/dist/frontend/lowering/builtins/x509.d.ts +33 -0
- package/dist/frontend/lowering/builtins/x509.js +431 -0
- package/dist/frontend/lowering/builtins/x509.js.map +1 -0
- package/dist/frontend/lowering/call-arguments.js +44 -0
- package/dist/frontend/lowering/call-arguments.js.map +1 -1
- package/dist/frontend/lowering/call-signatures.js +1 -1
- package/dist/frontend/lowering/call-signatures.js.map +1 -1
- package/dist/frontend/lowering/cjs-inline-require.js +1 -1
- package/dist/frontend/lowering/cjs-inline-require.js.map +1 -1
- package/dist/frontend/lowering/class-attributes.d.ts +7 -0
- package/dist/frontend/lowering/class-attributes.js +52 -10
- package/dist/frontend/lowering/class-attributes.js.map +1 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.d.ts +13 -0
- package/dist/frontend/lowering/class-dynamic-dispatch.js +174 -9
- package/dist/frontend/lowering/class-dynamic-dispatch.js.map +1 -1
- package/dist/frontend/lowering/class-method-mutations.js +43 -8
- package/dist/frontend/lowering/class-method-mutations.js.map +1 -1
- package/dist/frontend/lowering/class-method-values.js +71 -1
- package/dist/frontend/lowering/class-method-values.js.map +1 -1
- package/dist/frontend/lowering/class-prototypes.d.ts +8 -0
- package/dist/frontend/lowering/class-prototypes.js +83 -2
- package/dist/frontend/lowering/class-prototypes.js.map +1 -1
- package/dist/frontend/lowering/class-to-primitive.d.ts +5 -0
- package/dist/frontend/lowering/class-to-primitive.js +79 -7
- package/dist/frontend/lowering/class-to-primitive.js.map +1 -1
- package/dist/frontend/lowering/coercions/state.d.ts +1 -0
- package/dist/frontend/lowering/coercions/state.js.map +1 -1
- package/dist/frontend/lowering/coercions/structural.js +89 -10
- package/dist/frontend/lowering/coercions/structural.js.map +1 -1
- package/dist/frontend/lowering/coercions/unions.d.ts +4 -2
- package/dist/frontend/lowering/coercions/unions.js +13 -6
- package/dist/frontend/lowering/coercions/unions.js.map +1 -1
- package/dist/frontend/lowering/containers/array-callbacks.js +51 -15
- package/dist/frontend/lowering/containers/array-callbacks.js.map +1 -1
- package/dist/frontend/lowering/containers/array-construction.d.ts +4 -1
- package/dist/frontend/lowering/containers/array-construction.js +102 -9
- package/dist/frontend/lowering/containers/array-construction.js.map +1 -1
- package/dist/frontend/lowering/containers/array-methods.js +85 -5
- package/dist/frontend/lowering/containers/array-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/array-pipelines.js +346 -77
- package/dist/frontend/lowering/containers/array-pipelines.js.map +1 -1
- package/dist/frontend/lowering/containers/callback-arguments.js +11 -1
- package/dist/frontend/lowering/containers/callback-arguments.js.map +1 -1
- package/dist/frontend/lowering/containers/collection-methods.js +12 -0
- package/dist/frontend/lowering/containers/collection-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/indexed-objects.js +73 -25
- package/dist/frontend/lowering/containers/indexed-objects.js.map +1 -1
- package/dist/frontend/lowering/containers/iterator-helpers.d.ts +4 -4
- package/dist/frontend/lowering/containers/iterator-helpers.js +8 -2
- package/dist/frontend/lowering/containers/iterator-helpers.js.map +1 -1
- package/dist/frontend/lowering/containers/replacer-params.d.ts +37 -0
- package/dist/frontend/lowering/containers/replacer-params.js +294 -0
- package/dist/frontend/lowering/containers/replacer-params.js.map +1 -0
- package/dist/frontend/lowering/containers/replacer-params.test.d.ts +1 -0
- package/dist/frontend/lowering/containers/replacer-params.test.js +61 -0
- package/dist/frontend/lowering/containers/replacer-params.test.js.map +1 -0
- package/dist/frontend/lowering/containers/string-and-regexp.js +2 -1
- package/dist/frontend/lowering/containers/string-and-regexp.js.map +1 -1
- package/dist/frontend/lowering/containers/string-replacement.js +7 -3
- package/dist/frontend/lowering/containers/string-replacement.js.map +1 -1
- package/dist/frontend/lowering/cycle-initialization.d.ts +4 -2
- package/dist/frontend/lowering/cycle-initialization.js +4 -1
- package/dist/frontend/lowering/cycle-initialization.js.map +1 -1
- package/dist/frontend/lowering/date-values.d.ts +9 -6
- package/dist/frontend/lowering/date-values.js +63 -16
- package/dist/frontend/lowering/date-values.js.map +1 -1
- package/dist/frontend/lowering/deferred-module-initializers.js +16 -8
- package/dist/frontend/lowering/deferred-module-initializers.js.map +1 -1
- package/dist/frontend/lowering/deferred-module-initializers.test.js +22 -6
- package/dist/frontend/lowering/deferred-module-initializers.test.js.map +1 -1
- package/dist/frontend/lowering/dispatch-sites.js +1 -0
- package/dist/frontend/lowering/dispatch-sites.js.map +1 -1
- package/dist/frontend/lowering/expressions/array-literals.d.ts +0 -8
- package/dist/frontend/lowering/expressions/array-literals.js +119 -26
- package/dist/frontend/lowering/expressions/array-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/binary.js +38 -0
- package/dist/frontend/lowering/expressions/binary.js.map +1 -1
- package/dist/frontend/lowering/expressions/element-access.js +50 -6
- package/dist/frontend/lowering/expressions/element-access.js.map +1 -1
- package/dist/frontend/lowering/expressions/identifiers.js +35 -3
- package/dist/frontend/lowering/expressions/identifiers.js.map +1 -1
- package/dist/frontend/lowering/expressions/narrowing.d.ts +2 -1
- package/dist/frontend/lowering/expressions/narrowing.js +8 -1
- package/dist/frontend/lowering/expressions/narrowing.js.map +1 -1
- package/dist/frontend/lowering/expressions/object-literals.js +8 -2
- package/dist/frontend/lowering/expressions/object-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/property-access.js +65 -34
- package/dist/frontend/lowering/expressions/property-access.js.map +1 -1
- package/dist/frontend/lowering/expressions/relational.js +76 -11
- package/dist/frontend/lowering/expressions/relational.js.map +1 -1
- package/dist/frontend/lowering/expressions/typeof.js +6 -1
- package/dist/frontend/lowering/expressions/typeof.js.map +1 -1
- package/dist/frontend/lowering/expressions/updates.js +20 -11
- package/dist/frontend/lowering/expressions/updates.js.map +1 -1
- package/dist/frontend/lowering/f64-handles.d.ts +8 -0
- package/dist/frontend/lowering/f64-handles.js +16 -0
- package/dist/frontend/lowering/f64-handles.js.map +1 -0
- package/dist/frontend/lowering/frozen-records.d.ts +5 -0
- package/dist/frontend/lowering/frozen-records.js +12 -4
- package/dist/frontend/lowering/frozen-records.js.map +1 -1
- package/dist/frontend/lowering/function-context.d.ts +3 -0
- package/dist/frontend/lowering/function-context.js.map +1 -1
- package/dist/frontend/lowering/function-returns.js +15 -0
- package/dist/frontend/lowering/function-returns.js.map +1 -1
- package/dist/frontend/lowering/generic-functions.js +17 -6
- package/dist/frontend/lowering/generic-functions.js.map +1 -1
- package/dist/frontend/lowering/instantiation-path.d.ts +3 -2
- package/dist/frontend/lowering/instantiation-path.js.map +1 -1
- package/dist/frontend/lowering/instantiation-path.test.js +6 -4
- package/dist/frontend/lowering/instantiation-path.test.js.map +1 -1
- package/dist/frontend/lowering/iterator-adapters.d.ts +4 -2
- package/dist/frontend/lowering/iterator-adapters.js +26 -33
- package/dist/frontend/lowering/iterator-adapters.js.map +1 -1
- package/dist/frontend/lowering/js-collection-types.d.ts +11 -0
- package/dist/frontend/lowering/js-collection-types.js +490 -0
- package/dist/frontend/lowering/js-collection-types.js.map +1 -0
- package/dist/frontend/lowering/lib-boundary.js +2 -2
- package/dist/frontend/lowering/lib-boundary.js.map +1 -1
- package/dist/frontend/lowering/lower-assert.d.ts +14 -0
- package/dist/frontend/lowering/lower-assert.js +283 -26
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-builtin-values.js +3 -3
- package/dist/frontend/lowering/lower-builtin-values.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.js +97 -7
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.d.ts +59 -7
- package/dist/frontend/lowering/lower-classes.js +647 -176
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-console.js +2 -1
- package/dist/frontend/lowering/lower-console.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.d.ts +5 -0
- package/dist/frontend/lowering/lower-exprs.js +52 -5
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-functions.js +7 -0
- package/dist/frontend/lowering/lower-functions.js.map +1 -1
- package/dist/frontend/lowering/lower-generators.js +4 -3
- package/dist/frontend/lowering/lower-generators.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.js +264 -46
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.js +28 -17
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-namespaces.d.ts +3 -0
- package/dist/frontend/lowering/lower-namespaces.js +44 -1
- package/dist/frontend/lowering/lower-namespaces.js.map +1 -1
- package/dist/frontend/lowering/lower-node-module.js +1 -1
- package/dist/frontend/lowering/lower-node-module.js.map +1 -1
- package/dist/frontend/lowering/lower-server.js +126 -32
- package/dist/frontend/lowering/lower-server.js.map +1 -1
- package/dist/frontend/lowering/lower-stdlib.d.ts +4 -1
- package/dist/frontend/lowering/lower-stdlib.js +51 -37
- package/dist/frontend/lowering/lower-stdlib.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.js +294 -46
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lower-stream.js +515 -121
- package/dist/frontend/lowering/lower-stream.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +52 -10
- package/dist/frontend/lowering/lowerer.js +249 -37
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/lowerer.test.js +1 -1
- package/dist/frontend/lowering/lowerer.test.js.map +1 -1
- package/dist/frontend/lowering/module-namespace-elements.d.ts +13 -0
- package/dist/frontend/lowering/module-namespace-elements.js +118 -1
- package/dist/frontend/lowering/module-namespace-elements.js.map +1 -1
- package/dist/frontend/lowering/private-brands.d.ts +5 -0
- package/dist/frontend/lowering/private-brands.js +39 -0
- package/dist/frontend/lowering/private-brands.js.map +1 -1
- package/dist/frontend/lowering/runtime-optional-elements.d.ts +6 -0
- package/dist/frontend/lowering/runtime-optional-elements.js +14 -3
- package/dist/frontend/lowering/runtime-optional-elements.js.map +1 -1
- package/dist/frontend/lowering/sanitize-class-types.js +2 -0
- package/dist/frontend/lowering/sanitize-class-types.js.map +1 -1
- package/dist/frontend/lowering/site-dependencies.d.ts +7 -2
- package/dist/frontend/lowering/site-dependencies.js +0 -15
- package/dist/frontend/lowering/site-dependencies.js.map +1 -1
- package/dist/frontend/lowering/site-dependencies.test.js +7 -5
- package/dist/frontend/lowering/site-dependencies.test.js.map +1 -1
- package/dist/frontend/lowering/string-index-bounds.d.ts +7 -4
- package/dist/frontend/lowering/string-index-bounds.js +21 -7
- package/dist/frontend/lowering/string-index-bounds.js.map +1 -1
- package/dist/frontend/lowering/surfaces.d.ts +12 -3
- package/dist/frontend/lowering/surfaces.js +1576 -1539
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/lowering/symbol-fields.d.ts +7 -0
- package/dist/frontend/lowering/symbol-fields.js +45 -2
- package/dist/frontend/lowering/symbol-fields.js.map +1 -1
- package/dist/frontend/lowering/union-narrow.d.ts +5 -2
- package/dist/frontend/lowering/union-narrow.js +6 -3
- package/dist/frontend/lowering/union-narrow.js.map +1 -1
- package/dist/frontend/lowering/union-narrow.test.js +10 -0
- package/dist/frontend/lowering/union-narrow.test.js.map +1 -1
- package/dist/frontend/npm-static-namespace-defaults.d.ts +6 -0
- package/dist/frontend/npm-static-namespace-defaults.js +163 -0
- package/dist/frontend/npm-static-namespace-defaults.js.map +1 -0
- package/dist/frontend/npm-static-namespace-defaults.test.d.ts +1 -0
- package/dist/frontend/npm-static-namespace-defaults.test.js +72 -0
- package/dist/frontend/npm-static-namespace-defaults.test.js.map +1 -0
- package/dist/frontend/npm-static-prune.js +152 -111
- package/dist/frontend/npm-static-prune.js.map +1 -1
- package/dist/frontend/npm-static.js +35 -32
- package/dist/frontend/npm-static.js.map +1 -1
- package/dist/frontend/package-shims.d.ts +7 -4
- package/dist/frontend/package-shims.js +39 -40
- package/dist/frontend/package-shims.js.map +1 -1
- package/dist/frontend/pipeline-native.d.ts +2 -2
- package/dist/frontend/pipeline-native.js +2 -2
- package/dist/frontend/pipeline-native.js.map +1 -1
- package/dist/frontend/pipeline.d.ts +19 -2
- package/dist/frontend/pipeline.js +102 -11
- package/dist/frontend/pipeline.js.map +1 -1
- package/dist/frontend/program-analysis.d.ts +2 -0
- package/dist/frontend/program-analysis.js +3 -0
- package/dist/frontend/program-analysis.js.map +1 -1
- package/dist/frontend/program.d.ts +15 -0
- package/dist/frontend/program.js +227 -64
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/resolve.d.ts +2 -0
- package/dist/frontend/resolve.js +5 -0
- package/dist/frontend/resolve.js.map +1 -1
- package/dist/frontend/services.d.ts +3 -0
- package/dist/frontend/services.js +31 -4
- package/dist/frontend/services.js.map +1 -1
- package/dist/frontend/shape-inference/analyze.d.ts +93 -0
- package/dist/frontend/shape-inference/analyze.js +3138 -0
- package/dist/frontend/shape-inference/analyze.js.map +1 -0
- package/dist/frontend/shape-inference/constant-graphs.d.ts +54 -0
- package/dist/frontend/shape-inference/constant-graphs.js +357 -0
- package/dist/frontend/shape-inference/constant-graphs.js.map +1 -0
- package/dist/frontend/shape-inference/domain.d.ts +32 -0
- package/dist/frontend/shape-inference/domain.js +104 -0
- package/dist/frontend/shape-inference/domain.js.map +1 -0
- package/dist/frontend/shape-inference/index.d.ts +7 -0
- package/dist/frontend/shape-inference/index.js +19 -0
- package/dist/frontend/shape-inference/index.js.map +1 -0
- package/dist/frontend/shape-inference/report.d.ts +21 -0
- package/dist/frontend/shape-inference/report.js +348 -0
- package/dist/frontend/shape-inference/report.js.map +1 -0
- package/dist/frontend/token-equivalence.d.ts +6 -0
- package/dist/frontend/token-equivalence.js +66 -9
- package/dist/frontend/token-equivalence.js.map +1 -1
- package/dist/frontend/token-equivalence.test.js +33 -1
- package/dist/frontend/token-equivalence.test.js.map +1 -1
- package/dist/frontend/ts7/checker-features.d.ts +15 -0
- package/dist/frontend/ts7/checker-features.js +45 -0
- package/dist/frontend/ts7/checker-features.js.map +1 -0
- package/dist/frontend/ts7/checker-features.test.d.ts +1 -0
- package/dist/frontend/ts7/checker-features.test.js +40 -0
- package/dist/frontend/ts7/checker-features.test.js.map +1 -0
- package/dist/frontend/ts7/checker-server.d.ts +19 -0
- package/dist/frontend/ts7/checker-server.js +46 -0
- package/dist/frontend/ts7/checker-server.js.map +1 -0
- package/dist/frontend/ts7/checker-server.test.d.ts +1 -0
- package/dist/frontend/ts7/checker-server.test.js +38 -0
- package/dist/frontend/ts7/checker-server.test.js.map +1 -0
- package/dist/frontend/ts7/lib-diagnostics.js +39 -13
- package/dist/frontend/ts7/lib-diagnostics.js.map +1 -1
- package/dist/frontend/ts7/lib-diagnostics.test.js +40 -0
- package/dist/frontend/ts7/lib-diagnostics.test.js.map +1 -1
- package/dist/frontend/ts7/native-api.d.ts +1 -0
- package/dist/frontend/ts7/native-api.js +25 -2
- package/dist/frontend/ts7/native-api.js.map +1 -1
- package/dist/frontend/ts7/native-process.d.ts +9 -2
- package/dist/frontend/ts7/native-process.js +22 -4
- package/dist/frontend/ts7/native-process.js.map +1 -1
- package/dist/frontend/ts7/program-host.d.ts +11 -0
- package/dist/frontend/ts7/program-host.js +36 -22
- package/dist/frontend/ts7/program-host.js.map +1 -1
- package/dist/frontend/ts7/semantic-json.d.ts +9 -0
- package/dist/frontend/ts7/semantic-json.js +25 -5
- package/dist/frontend/ts7/semantic-json.js.map +1 -1
- package/dist/frontend/ts7/semantic-model.js +3 -1
- package/dist/frontend/ts7/semantic-model.js.map +1 -1
- package/dist/frontend/ts7/source-parser.js +3 -1
- package/dist/frontend/ts7/source-parser.js.map +1 -1
- package/dist/frontend/tsc-codes.js +10 -0
- package/dist/frontend/tsc-codes.js.map +1 -1
- package/dist/frontend/type-mapper.d.ts +18 -6
- package/dist/frontend/type-mapper.js +160 -28
- package/dist/frontend/type-mapper.js.map +1 -1
- package/dist/index.d.ts +44 -3
- package/dist/index.js +27 -8
- package/dist/index.js.map +1 -1
- package/dist/ir/builtin-effects.js +29 -0
- package/dist/ir/builtin-effects.js.map +1 -1
- package/dist/ir/builtin-signatures.d.ts +7 -2
- package/dist/ir/builtin-signatures.js +5104 -4950
- package/dist/ir/builtin-signatures.js.map +1 -1
- package/dist/ir/callback-specialization.d.ts +4 -2
- package/dist/ir/callback-specialization.js +24 -9
- package/dist/ir/callback-specialization.js.map +1 -1
- package/dist/ir/capture-values.js +4 -2
- package/dist/ir/capture-values.js.map +1 -1
- package/dist/ir/char-unit-locals.d.ts +12 -2
- package/dist/ir/char-unit-locals.js +400 -58
- package/dist/ir/char-unit-locals.js.map +1 -1
- package/dist/ir/char-unit-locals.test.js +111 -0
- package/dist/ir/char-unit-locals.test.js.map +1 -1
- package/dist/ir/constant-globals.js +18 -4
- package/dist/ir/constant-globals.js.map +1 -1
- package/dist/ir/expression-inlining.d.ts +15 -0
- package/dist/ir/expression-inlining.js +166 -0
- package/dist/ir/expression-inlining.js.map +1 -0
- package/dist/ir/expression-inlining.test.d.ts +1 -0
- package/dist/ir/expression-inlining.test.js +123 -0
- package/dist/ir/expression-inlining.test.js.map +1 -0
- package/dist/ir/function-references.js +2 -0
- package/dist/ir/function-references.js.map +1 -1
- package/dist/ir/function-references.test.js +6 -0
- package/dist/ir/function-references.test.js.map +1 -1
- package/dist/ir/int32-arrays.d.ts +27 -6
- package/dist/ir/int32-arrays.js +106 -18
- package/dist/ir/int32-arrays.js.map +1 -1
- package/dist/ir/int32-slots.d.ts +26 -1
- package/dist/ir/int32-slots.js +284 -5
- package/dist/ir/int32-slots.js.map +1 -1
- package/dist/ir/int32-slots.test.js +5 -0
- package/dist/ir/int32-slots.test.js.map +1 -1
- package/dist/ir/integer-loop-facts.d.ts +5 -0
- package/dist/ir/integer-loop-facts.js +90 -1
- package/dist/ir/integer-loop-facts.js.map +1 -1
- package/dist/ir/integer-loops.d.ts +14 -1
- package/dist/ir/integer-loops.js +93 -7
- package/dist/ir/integer-loops.js.map +1 -1
- package/dist/ir/integer-loops.test.js +70 -0
- package/dist/ir/integer-loops.test.js.map +1 -1
- package/dist/ir/integer-ranges.js +18 -2
- package/dist/ir/integer-ranges.js.map +1 -1
- package/dist/ir/integer-ranges.test.js +64 -4
- package/dist/ir/integer-ranges.test.js.map +1 -1
- package/dist/ir/ir.d.ts +50 -8
- package/dist/ir/ir.js +38 -12
- package/dist/ir/ir.js.map +1 -1
- package/dist/ir/js-ic.d.ts +25 -5
- package/dist/ir/js-ic.js +93 -13
- package/dist/ir/js-ic.js.map +1 -1
- package/dist/ir/js-ic.test.js +153 -0
- package/dist/ir/js-ic.test.js.map +1 -1
- package/dist/ir/node-index.d.ts +7 -0
- package/dist/ir/node-index.js +32 -0
- package/dist/ir/node-index.js.map +1 -1
- package/dist/ir/receiver-readers.d.ts +6 -1
- package/dist/ir/receiver-readers.js +53 -28
- package/dist/ir/receiver-readers.js.map +1 -1
- package/dist/ir/row-pairs.d.ts +15 -0
- package/dist/ir/row-pairs.js +373 -0
- package/dist/ir/row-pairs.js.map +1 -0
- package/dist/ir/row-pairs.test.d.ts +1 -0
- package/dist/ir/row-pairs.test.js +129 -0
- package/dist/ir/row-pairs.test.js.map +1 -0
- package/dist/ir/runtime-features.d.ts +17 -4
- package/dist/ir/runtime-features.js +69 -12
- package/dist/ir/runtime-features.js.map +1 -1
- package/dist/ir/scalar-records.d.ts +15 -0
- package/dist/ir/scalar-records.js +301 -1
- package/dist/ir/scalar-records.js.map +1 -1
- package/dist/ir/scalar-records.test.js +181 -1
- package/dist/ir/scalar-records.test.js.map +1 -1
- package/dist/ir/self-captures.js +8 -0
- package/dist/ir/self-captures.js.map +1 -1
- package/dist/ir/validate.js +37 -28
- package/dist/ir/validate.js.map +1 -1
- package/dist/library/fence-eval.js +4 -4
- package/dist/library/fence-eval.js.map +1 -1
- package/dist/library/ir-policy.js +4 -0
- package/dist/library/ir-policy.js.map +1 -1
- package/dist/library/library-cache.d.ts +1 -0
- package/dist/library/library-cache.js +1 -0
- package/dist/library/library-cache.js.map +1 -1
- package/dist/library/library-cache.test.js +13 -0
- package/dist/library/library-cache.test.js.map +1 -1
- package/dist/native/cache.d.ts +5 -1
- package/dist/native/cache.js +15 -3
- package/dist/native/cache.js.map +1 -1
- package/dist/native/cli.js +6 -0
- package/dist/native/cli.js.map +1 -1
- package/dist/native/compiler.d.ts +3 -0
- package/dist/native/compiler.js +72 -26
- package/dist/native/compiler.js.map +1 -1
- package/dist/native/compiler.test.js +87 -2
- package/dist/native/compiler.test.js.map +1 -1
- package/dist/native/executable-cache-open.test.d.ts +1 -0
- package/dist/native/executable-cache-open.test.js +80 -0
- package/dist/native/executable-cache-open.test.js.map +1 -0
- package/dist/native/executable-cache.d.ts +43 -3
- package/dist/native/executable-cache.js +177 -36
- package/dist/native/executable-cache.js.map +1 -1
- package/dist/native/executable-cache.test.js +103 -0
- package/dist/native/executable-cache.test.js.map +1 -1
- package/dist/native/prepare.js +38 -16
- package/dist/native/prepare.js.map +1 -1
- package/dist/native/prepare.test.js +51 -1
- package/dist/native/prepare.test.js.map +1 -1
- package/dist/native/sanitizer.d.ts +1 -1
- package/dist/native/sanitizer.js +17 -3
- package/dist/native/sanitizer.js.map +1 -1
- package/dist/native/sanitizer.test.js +4 -0
- package/dist/native/sanitizer.test.js.map +1 -1
- package/dist/node-islands/classify.d.ts +14 -0
- package/dist/node-islands/classify.js +114 -0
- package/dist/node-islands/classify.js.map +1 -0
- package/dist/node-islands/detect.d.ts +13 -0
- package/dist/node-islands/detect.js +805 -0
- package/dist/node-islands/detect.js.map +1 -0
- package/dist/node-islands/detect.test.d.ts +1 -0
- package/dist/node-islands/detect.test.js +136 -0
- package/dist/node-islands/detect.test.js.map +1 -0
- package/dist/node-islands/origin.d.ts +21 -0
- package/dist/node-islands/origin.js +60 -0
- package/dist/node-islands/origin.js.map +1 -0
- package/dist/node-islands/policy.d.ts +49 -0
- package/dist/node-islands/policy.js +130 -0
- package/dist/node-islands/policy.js.map +1 -0
- package/dist/node-islands/report.d.ts +22 -0
- package/dist/node-islands/report.js +326 -0
- package/dist/node-islands/report.js.map +1 -0
- package/dist/node-islands/report.test.d.ts +1 -0
- package/dist/node-islands/report.test.js +228 -0
- package/dist/node-islands/report.test.js.map +1 -0
- package/dist/node-islands/rules.d.ts +20 -0
- package/dist/node-islands/rules.js +91 -0
- package/dist/node-islands/rules.js.map +1 -0
- package/dist/node-islands/scan.d.ts +53 -0
- package/dist/node-islands/scan.js +104 -0
- package/dist/node-islands/scan.js.map +1 -0
- package/dist/node-islands/summary.d.ts +78 -0
- package/dist/node-islands/summary.js +26 -0
- package/dist/node-islands/summary.js.map +1 -0
- package/dist/project-config.d.ts +50 -0
- package/dist/project-config.js +372 -0
- package/dist/project-config.js.map +1 -0
- package/dist/project-config.test.d.ts +1 -0
- package/dist/project-config.test.js +154 -0
- package/dist/project-config.test.js.map +1 -0
- package/dist/wasm/discover.js +6 -31
- package/dist/wasm/discover.js.map +1 -1
- package/package.json +20 -20
- package/surface-manifest.json +20 -35
|
@@ -8,7 +8,7 @@ import type { IntegerCountedForLoop, IntegerPairedForLoop } from "../../ir/integ
|
|
|
8
8
|
import { type SplitSpan, type StoredSplitSnapshot } from "./split-loops.js";
|
|
9
9
|
import { type ChunkResult, EmitJournal } from "./emit-journal.js";
|
|
10
10
|
import { type IntegerRange, type IntegerRanges } from "../../ir/integer-ranges.js";
|
|
11
|
-
import { type Int32Slots } from "../../ir/int32-slots.js";
|
|
11
|
+
import { type DynamicFieldStores, Int32Slots } from "../../ir/int32-slots.js";
|
|
12
12
|
import { type FinalFields } from "../../ir/final-fields.js";
|
|
13
13
|
import { type Int32Abi } from "./int32-abi.js";
|
|
14
14
|
import { type Int32Local } from "./int32-locals.js";
|
|
@@ -34,7 +34,7 @@ import { ReferenceWrites, type Writes } from "./reference-writes.js";
|
|
|
34
34
|
import { LlvmDebugInfo } from "./debug-info.js";
|
|
35
35
|
import { StackCallbacks } from "./stack-callbacks.js";
|
|
36
36
|
import { AmbientReceiverReaders } from "./constant-callbacks.js";
|
|
37
|
-
import { type
|
|
37
|
+
import { type LendingFacts, type StringSliceSnapshot } from "./string-slices.js";
|
|
38
38
|
import { LazyCaptures } from "./lazy-captures.js";
|
|
39
39
|
import { StackCaptures } from "./stack-captures.js";
|
|
40
40
|
import { PublishWalkers } from "./publish.js";
|
|
@@ -47,6 +47,7 @@ import { LlWalkers } from "./walkers.js";
|
|
|
47
47
|
import { NullableUnions } from "./nullable-unions.js";
|
|
48
48
|
import { type InlineRcMode, type MapKeyAccess } from "./shapes.js";
|
|
49
49
|
import type { ExprOf, LibCallExpr, LlStreamTypedRefAdapter, LlValue } from "./expr-context.js";
|
|
50
|
+
import { type SpeculationContext, type SpeculativeValue } from "./speculative-integers.js";
|
|
50
51
|
export { LlvmUnsupportedError } from "./unsupported.js";
|
|
51
52
|
export interface LlArgPackAndTrampolinePrologue {
|
|
52
53
|
definitions: string[];
|
|
@@ -79,15 +80,20 @@ export interface ForkPrimitives {
|
|
|
79
80
|
export interface LlvmTargetOptions {
|
|
80
81
|
/** C ABI target; omitted direct emission uses the host ABI. */
|
|
81
82
|
targetTriple?: string;
|
|
83
|
+
/** Linux (glibc and musl) executables: functions reached only by direct
|
|
84
|
+
* calls propagate exceptions by unwinding the native stack (unwind-abi.ts). */
|
|
85
|
+
unwindAbi?: boolean;
|
|
86
|
+
/** Functions kept on the pending-flag ABI under `unwindAbi`: the ones an
|
|
87
|
+
* earlier emission found breaking its rules (UnwindAbiViolation). */
|
|
88
|
+
unwindExcluded?: ReadonlySet<string>;
|
|
82
89
|
/** Emit the function bodies in this many contiguous ranges, each by its
|
|
83
|
-
* own emitter, and merge them in function order (emit-journal.ts
|
|
84
|
-
* output is the same as one
|
|
85
|
-
*
|
|
90
|
+
* own emitter, and merge them in function order (emit-journal.ts, and
|
|
91
|
+
* debug-info.ts for debug metadata). The output is the same as one
|
|
92
|
+
* emitter's. */
|
|
86
93
|
functionChunks?: number;
|
|
87
94
|
/** Emit the function bodies of a large module on this many forked worker
|
|
88
95
|
* processes at a time (emit-module.ts), forked with `forkPrimitives`. The
|
|
89
|
-
* output is the same as one emitter's.
|
|
90
|
-
* emit in one emitter. */
|
|
96
|
+
* output is the same as one emitter's. */
|
|
91
97
|
functionWorkers?: number;
|
|
92
98
|
/** The host's process primitives, where it can fork (the native
|
|
93
99
|
* compiler's). */
|
|
@@ -139,6 +145,16 @@ export interface LlvmTargetOptions {
|
|
|
139
145
|
* there). `platform` is a target platform (`linux`, `darwin`, `win32`,
|
|
140
146
|
* `wasi`). */
|
|
141
147
|
export declare function lowRegionTarget(platform: string, sanitize: boolean): boolean;
|
|
148
|
+
/** The int32 slot analysis of one module and the inputs it read: the
|
|
149
|
+
* constructor's own analyses of that module, which LlEmitter takes over
|
|
150
|
+
* instead of repeating them when it emits the same module. */
|
|
151
|
+
export interface Int32SlotAnalysis {
|
|
152
|
+
readonly mod: IrModule;
|
|
153
|
+
readonly nodeIndex: IrNodeIndex;
|
|
154
|
+
readonly initializerBindings: ReturnType<typeof findInitializerBindings>;
|
|
155
|
+
readonly dynamicStores: DynamicFieldStores;
|
|
156
|
+
readonly slots: Int32Slots;
|
|
157
|
+
}
|
|
142
158
|
export declare function emitLlvmModule(input: IrModule, options?: LlvmTargetOptions): string;
|
|
143
159
|
/** emitLlvmModule's text as parts that concatenate to it, without the copy
|
|
144
160
|
* that joining them makes: a large program's text is 150 MB. */
|
|
@@ -189,8 +205,9 @@ export declare class LlEmitter {
|
|
|
189
205
|
readonly stringSlices: Map<string, StringSliceSnapshot>;
|
|
190
206
|
/** Slices written into stack buffers (findScratchStringSlices). */
|
|
191
207
|
scratchStringSlices: ReadonlySet<IrExpr>;
|
|
192
|
-
/** String parameters
|
|
193
|
-
|
|
208
|
+
/** String parameters, record fields and record producers a caller may
|
|
209
|
+
* lend scratch slices to. */
|
|
210
|
+
lendingFacts: LendingFacts;
|
|
194
211
|
localStackUnions: Map<string, {
|
|
195
212
|
kind: "unionWrap";
|
|
196
213
|
unionId: string;
|
|
@@ -478,7 +495,18 @@ export declare class LlEmitter {
|
|
|
478
495
|
readonly checkedNarrows: CheckedNarrows;
|
|
479
496
|
callArrayReads: Map<IrExpr, LocalArrayRead>;
|
|
480
497
|
mapReadLifetimes: MapReadLifetimes;
|
|
498
|
+
/** Locals of the current function that hold a Map.get result as the
|
|
499
|
+
* entry's own reference (findMapReadBorrows, borrowableMapGet). */
|
|
500
|
+
borrowedMapGets: ReadonlySet<string>;
|
|
481
501
|
readNumberMapWrites: ReadonlySet<IrExpr>;
|
|
502
|
+
/** The integer views of the current function's number Map/Set keys, by
|
|
503
|
+
* the key's double operand (noteNumberMapKey, map-number-lookup.ts). */
|
|
504
|
+
numberMapKeyIntegers: Map<string, {
|
|
505
|
+
name: string;
|
|
506
|
+
type: "i32" | "i64";
|
|
507
|
+
signed: boolean;
|
|
508
|
+
range: IntegerRange;
|
|
509
|
+
}>;
|
|
482
510
|
/** The current function's fused string-key Map get-then-set pairs (map-entry-fusion.ts). */
|
|
483
511
|
mapEntryFusion: MapEntryFusion | null;
|
|
484
512
|
readonly callLifetimes: CallLifetimes;
|
|
@@ -548,6 +576,10 @@ export declare class LlEmitter {
|
|
|
548
576
|
/** May-throw analysis (computeMayThrow): pending
|
|
549
577
|
* checks are emitted only after calls that can actually raise. */
|
|
550
578
|
readonly mayThrow: Set<string>;
|
|
579
|
+
/** The functions that propagate exceptions by unwinding (unwind-abi.ts). */
|
|
580
|
+
readonly unwindAbi: Set<string>;
|
|
581
|
+
/** Whether the function being emitted is one of unwindAbi. */
|
|
582
|
+
currentUnwindAbi: boolean;
|
|
551
583
|
readonly indirectMayThrow: boolean;
|
|
552
584
|
/** Worker programs: the functions that poll for termination on entry
|
|
553
585
|
* (workerTerminationPolls); null outside worker programs. */
|
|
@@ -586,6 +618,20 @@ export declare class LlEmitter {
|
|
|
586
618
|
/** Locals whose array literal emitStmts left for the `await Promise.all`
|
|
587
619
|
* that reads them (deferredPromiseAllLocal). */
|
|
588
620
|
private readonly deferredPromiseAllEntries;
|
|
621
|
+
/** Empty array literals that a capacity hint follows directly
|
|
622
|
+
* (reservedArrayLength), with that hint. Constructing the literal with
|
|
623
|
+
* the hinted capacity consumes the hint, which then emits nothing. */
|
|
624
|
+
readonly reservedArrayLengths: Map<IrExpr, {
|
|
625
|
+
kind: "arraySetLength";
|
|
626
|
+
arr: IrExpr;
|
|
627
|
+
length: IrExpr;
|
|
628
|
+
loc: SrcLoc;
|
|
629
|
+
pop?: boolean;
|
|
630
|
+
reserve?: boolean;
|
|
631
|
+
} & {
|
|
632
|
+
kind: "arraySetLength";
|
|
633
|
+
}>;
|
|
634
|
+
readonly consumedReserves: Set<IrStmt>;
|
|
589
635
|
/** The promise a `return` emitted past its finally regions already
|
|
590
636
|
* produced for its adopting await (borrowed from the return's parked
|
|
591
637
|
* slot); that await takes it instead of evaluating its operand. */
|
|
@@ -653,6 +699,7 @@ export declare class LlEmitter {
|
|
|
653
699
|
* statics and construct thunks assemble around the bodies. */
|
|
654
700
|
readonly classObjs: Map<string, {
|
|
655
701
|
nameSym: string;
|
|
702
|
+
baseNameSym: string | null;
|
|
656
703
|
}>;
|
|
657
704
|
private readonly unionFieldReadGroups;
|
|
658
705
|
/** Preorder intervals of the runtime error classes under THIS module's
|
|
@@ -724,12 +771,20 @@ export declare class LlEmitter {
|
|
|
724
771
|
streamingSplitsEnabled: boolean;
|
|
725
772
|
readonly initializerBindings: ReturnType<typeof findInitializerBindings>;
|
|
726
773
|
/** Whole-program int32 storage and parameter/result facts. */
|
|
727
|
-
|
|
774
|
+
get int32Slots(): Int32Slots;
|
|
775
|
+
private int32SlotsValue;
|
|
776
|
+
/** The join of the int32 slot analysis a forked process computes
|
|
777
|
+
* (startInt32Slots). */
|
|
778
|
+
private int32SlotsJoin;
|
|
728
779
|
/** The program has no runtime store into a checked-dynamic value
|
|
729
780
|
* (dynamicFieldStores), so live views of classes and records never
|
|
730
781
|
* commit back into their objects. Library builds keep their commits:
|
|
731
782
|
* their values cross a native boundary. */
|
|
732
783
|
readonly liveViewsReadOnly: boolean;
|
|
784
|
+
/** The program freezes, seals or prevents extensions of untyped values
|
|
785
|
+
* (IrModule.untypedIntegrity): the commits of class views store the
|
|
786
|
+
* view's integrity state in the instance's integrity word. */
|
|
787
|
+
readonly untypedIntegrity: boolean;
|
|
733
788
|
/** Functions whose direct calls use i32 parameters or results. */
|
|
734
789
|
readonly int32Abis: ReadonlyMap<string, Int32Abi>;
|
|
735
790
|
/** Pure number functions with speculative integer clones. */
|
|
@@ -770,6 +825,9 @@ export declare class LlEmitter {
|
|
|
770
825
|
integerTempsEnabled: boolean;
|
|
771
826
|
/** Speculative integer loops (speculative-integers.ts) run in this function. */
|
|
772
827
|
speculativeLoopsEnabled: boolean;
|
|
828
|
+
/** False inside the copy of a versioned loop that runs when its guard
|
|
829
|
+
* fails: loops there get no speculative or int32 kind copies. */
|
|
830
|
+
loopCopiesEnabled: boolean;
|
|
773
831
|
/** The fast copy of a speculative integer loop being emitted: its
|
|
774
832
|
* integer-computed writes and where each resumes in the ordinary copy. */
|
|
775
833
|
speculation: {
|
|
@@ -782,6 +840,8 @@ export declare class LlEmitter {
|
|
|
782
840
|
* integer loop has neither. */
|
|
783
841
|
bails?: string;
|
|
784
842
|
ran?: string;
|
|
843
|
+
/** Writes that speculate a rewritten value (rewriteSpeculable). */
|
|
844
|
+
values?: ReadonlyMap<IrStmt, SpeculativeValue>;
|
|
785
845
|
} | null;
|
|
786
846
|
/** Speculative loop sites numbered so far in the module. */
|
|
787
847
|
speculativeLoopSites: number;
|
|
@@ -790,6 +850,16 @@ export declare class LlEmitter {
|
|
|
790
850
|
label: string;
|
|
791
851
|
placed: boolean;
|
|
792
852
|
}> | null;
|
|
853
|
+
/** The rewritten values of the writes `speculationResume` resumes at. */
|
|
854
|
+
speculationResumeValues: ReadonlyMap<IrStmt, SpeculativeValue> | null;
|
|
855
|
+
/** Hoisted speculative leaves numbered so far in the function being
|
|
856
|
+
* emitted (emitFunction resets it): a function's local names must not
|
|
857
|
+
* depend on which functions the same emitter emitted before it, since
|
|
858
|
+
* function workers each emit a share of the module. */
|
|
859
|
+
speculativeLeaves: number;
|
|
860
|
+
private readonly inlinableFunctions;
|
|
861
|
+
/** What speculative loop planning may assume here (SpeculationContext). */
|
|
862
|
+
speculationContext(): SpeculationContext;
|
|
793
863
|
/** Run once at the top of the next loop copy's header
|
|
794
864
|
* (`enterLoopHeader`): records the ordinary copy's header, or sends the
|
|
795
865
|
* third copy's header there. */
|
|
@@ -831,9 +901,23 @@ export declare class LlEmitter {
|
|
|
831
901
|
* (one-unit tests and switches, charAtUnitRead), with the charAt each
|
|
832
902
|
* stands for: a loop version's proof for the charAt covers its read. */
|
|
833
903
|
readonly charAtUnitReads: Map<IrExpr, IrExpr>;
|
|
904
|
+
/** String reads a loop version proved in bounds of a string's UTF-16
|
|
905
|
+
* units, with the units pointer to read (string-unit-versions.ts). */
|
|
906
|
+
stringUnitReads: ReadonlyMap<IrExpr | IrStmt, string>;
|
|
907
|
+
/** `length` reads of a loop version's string, with the i64 UTF-16
|
|
908
|
+
* length its guard took (bytes-loop-versions.ts). */
|
|
909
|
+
stringLengthReads: ReadonlyMap<IrExpr, string>;
|
|
834
910
|
/** Worker programs: typed-array accesses whose views an enclosing version
|
|
835
911
|
* guard proved thread-owned. */
|
|
836
912
|
bytesOwned: ReadonlySet<IrExpr | IrStmt>;
|
|
913
|
+
/** The alias-scope attachment of each typed-array element read and write
|
|
914
|
+
* in the current loop version's fast copy (emitVersionedLoop), and the
|
|
915
|
+
* one the element access being emitted carries (bytesElementAlias). */
|
|
916
|
+
bytesAliasScopes: ReadonlyMap<IrExpr | IrStmt, string>;
|
|
917
|
+
bytesAccessScope: string;
|
|
918
|
+
/** Loop versions with alias scopes in the current function; it names
|
|
919
|
+
* their scopes. */
|
|
920
|
+
aliasScopedVersions: number;
|
|
837
921
|
integerViews: Map<string, string>;
|
|
838
922
|
/** Module globals the current function owns outright (initializer
|
|
839
923
|
* bindings): their function-local slot, which stands in for the global. */
|
|
@@ -919,7 +1003,13 @@ export declare class LlEmitter {
|
|
|
919
1003
|
private readonly journaled;
|
|
920
1004
|
/** Stack-trace mode: functions no capture can include (no frame push). */
|
|
921
1005
|
readonly unframedFunctions: ReadonlySet<string>;
|
|
922
|
-
constructor(mod: IrModule, options: LlvmTargetOptions, journal?: EmitJournal | null);
|
|
1006
|
+
constructor(mod: IrModule, options: LlvmTargetOptions, journal?: EmitJournal | null, int32Analysis?: Int32SlotAnalysis | null);
|
|
1007
|
+
/** Computes the int32 slot analysis, or starts it on a forked process.
|
|
1008
|
+
* Dev builds read its result only near the end of the constructor
|
|
1009
|
+
* (int32Abis is empty with debug info), so for a large module the
|
|
1010
|
+
* process computes it while the constructor runs the other analyses. */
|
|
1011
|
+
private startInt32Slots;
|
|
1012
|
+
private joinInt32Slots;
|
|
923
1013
|
/** The borrowed parameters of a hierarchy's vtable slot (empty: owned). */
|
|
924
1014
|
virtualSlotBorrowed(rootName: string, slotIndex: number): ReadonlySet<number>;
|
|
925
1015
|
/** Optimized emission: no debug-info (dev) posture. */
|
|
@@ -1207,12 +1297,31 @@ export declare class LlEmitter {
|
|
|
1207
1297
|
* predecessors so the caller's remaining instructions stay well-formed;
|
|
1208
1298
|
* LLVM deletes it. */
|
|
1209
1299
|
emitAlwaysPendingUnwind(): void;
|
|
1300
|
+
/** Emits `line`, a `call` of `callee`, and reports whether the call
|
|
1301
|
+
* needs no pending check after it: a call of an unwinding-ABI function
|
|
1302
|
+
* becomes an `invoke` whose landing pad runs this frame's unwind (the
|
|
1303
|
+
* same releases and handler as emitPendingCheck's unwind path), and the
|
|
1304
|
+
* normal path continues in a fresh block. Coroutine bodies keep plain
|
|
1305
|
+
* calls (unwindAbiFunctions excludes their callees). */
|
|
1306
|
+
emitDirectCall(line: string, callee: string): boolean;
|
|
1307
|
+
/** Whether emitUnwind runs for a landing pad, whose unwind goes on with
|
|
1308
|
+
* `resume` instead of raising again. */
|
|
1309
|
+
private inLandingPad;
|
|
1310
|
+
/** Whether the function being emitted has a landing pad (its definition
|
|
1311
|
+
* needs the personality). */
|
|
1312
|
+
usesLandingPads: boolean;
|
|
1210
1313
|
/** A recursive function's entry check: below the running stack's guard,
|
|
1211
1314
|
* throw Node's RangeError and unwind like any other pending exception. */
|
|
1212
1315
|
emitStackCheck(): void;
|
|
1213
1316
|
/** Whether the emitter follows this call with a pending test (the
|
|
1214
1317
|
* conditions in expr-calls.ts). */
|
|
1215
1318
|
private callTestsPending;
|
|
1319
|
+
/** Whether `loop` needs a cancellation poll: in a worker program, unless
|
|
1320
|
+
* the loop already runs a pending test on every iteration, which observes
|
|
1321
|
+
* a terminate request itself (a separate poll would only add work). */
|
|
1322
|
+
workerLoopPolls(loop: Extract<IrStmt, {
|
|
1323
|
+
kind: "while" | "doWhile" | "for" | "forOf";
|
|
1324
|
+
}>): boolean;
|
|
1216
1325
|
workerLoopBudget(loop: Extract<IrStmt, {
|
|
1217
1326
|
kind: "while" | "doWhile" | "for" | "forOf";
|
|
1218
1327
|
}>): string | null;
|
|
@@ -1243,6 +1352,11 @@ export declare class LlEmitter {
|
|
|
1243
1352
|
* the body repeats on every iteration (a typed array's length, for one)
|
|
1244
1353
|
* stay in the loop. */
|
|
1245
1354
|
emitWorkerLoopCheck(slot: string | null): void;
|
|
1355
|
+
/** The cancellation poll itself. Calls and throwing operations retain
|
|
1356
|
+
* their own checks. Loops amortize this extra poll across bounded
|
|
1357
|
+
* batches of iterations so scalar work does not cross the runtime ABI on
|
|
1358
|
+
* every iteration. */
|
|
1359
|
+
emitWorkerPoll(): void;
|
|
1246
1360
|
/** Moves an already-evaluated value into the runtime's exception cell —
|
|
1247
1361
|
* the `throw` statement's kind dispatch (stmts.ts's), shared with
|
|
1248
1362
|
* every synthetic thrower. Ownership of a refcounted payload must have
|
|
@@ -1288,6 +1402,8 @@ export declare class LlEmitter {
|
|
|
1288
1402
|
* the scr_union_new_* dispatch of unionWrap and the wrap-into-join
|
|
1289
1403
|
* sites (shift). */
|
|
1290
1404
|
unionNewOwned(unionId: string, tag: number, v: LlValue): string;
|
|
1405
|
+
/** `name` and every class whose membership interval falls in its own. */
|
|
1406
|
+
private classSubtypes;
|
|
1291
1407
|
classMetaOf(className: string): LlClassMeta;
|
|
1292
1408
|
/** The field-slot pointer of a class member: rc at 0, the vtable word at
|
|
1293
1409
|
* 1 on hierarchy members, then the flattened field list. Runtime error
|
|
@@ -1367,6 +1483,10 @@ export declare class LlEmitter {
|
|
|
1367
1483
|
matchBytesLoopVersion(s: IrStmt & {
|
|
1368
1484
|
kind: "for" | "while";
|
|
1369
1485
|
}, counted: IntegerCountedForLoop | null, paired?: IntegerPairedForLoop | null): ReturnType<typeof matchBytesLoopVersion>;
|
|
1486
|
+
private unitSafe;
|
|
1487
|
+
/** The functions a loop over a string's UTF-16 units may call, or null
|
|
1488
|
+
* where emitted reads do not use the runtime's scan receiver. */
|
|
1489
|
+
private unitSafeFunctions;
|
|
1370
1490
|
/** The alias tag of a whole-slot load of a binding (module globals only). */
|
|
1371
1491
|
slotAlias(id: string): string;
|
|
1372
1492
|
binding(id: string): {
|
|
@@ -1472,6 +1592,7 @@ export declare class LlEmitter {
|
|
|
1472
1592
|
* the range's order, and answers the rename of the range's text to this
|
|
1473
1593
|
* emitter's numbered helpers. Ranges merge in function order. */
|
|
1474
1594
|
mergeChunk(chunk: ChunkResult): (text: string) => string;
|
|
1595
|
+
private functionNamed;
|
|
1475
1596
|
/** Adds a content-named constant a chunk interned. Its symbol is this
|
|
1476
1597
|
* emitter's own: a digest collision retries in first-use order, which a
|
|
1477
1598
|
* chunk alone does not know. */
|
|
@@ -1905,7 +2026,7 @@ export declare class LlEmitter {
|
|
|
1905
2026
|
emitBytesIndex(receiver: string, index: LlValue, expr?: IrExpr, inBounds?: boolean): string;
|
|
1906
2027
|
emitBytesData(receiver: string): string;
|
|
1907
2028
|
emitBytesLength(elem: IrBytesElem, receiver: string, bytes: boolean): LlValue;
|
|
1908
|
-
emitBytesGet(elem: IrBytesElem, receiver: string, index: LlValue, expr?: IrExpr, inBounds?: boolean, invalidNaN?: boolean, owned?: boolean): LlValue;
|
|
2029
|
+
emitBytesGet(elem: IrBytesElem, receiver: string, index: LlValue, expr?: IrExpr, inBounds?: boolean, invalidNaN?: boolean, owned?: boolean, scope?: string): LlValue;
|
|
1909
2030
|
emitToUint32(value: string, expr?: IrExpr, uint32?: string): string;
|
|
1910
2031
|
/** Stores a number into its int32-stored local, when it is one. The
|
|
1911
2032
|
* value is proven to be in the local's range, so its low 32 bits are the
|
|
@@ -1916,7 +2037,7 @@ export declare class LlEmitter {
|
|
|
1916
2037
|
* as its incoming double, which is the same number. */
|
|
1917
2038
|
int32LocalValue(localId: string, bits: string, type: IrType): LlValue;
|
|
1918
2039
|
storeIntegerView(localId: string, value: LlValue, expr?: IrExpr): void;
|
|
1919
|
-
emitBytesSet(elem: IrBytesElem, receiver: string, index: LlValue, value: LlValue, indexExpr?: IrExpr, expr?: IrExpr, inBounds?: boolean, owned?: boolean): void;
|
|
2040
|
+
emitBytesSet(elem: IrBytesElem, receiver: string, index: LlValue, value: LlValue, indexExpr?: IrExpr, expr?: IrExpr, inBounds?: boolean, owned?: boolean, scope?: string): void;
|
|
1920
2041
|
emitBytesIntrinsic(e: IrExpr & {
|
|
1921
2042
|
kind: "bytesIntrinsic";
|
|
1922
2043
|
}): LlValue;
|