aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/builtins/cpp/StreamInternalsBuiltins.cpp
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-10-21 22:54:17 -0700
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-10-21 22:54:17 -0700
commit73fba0c5f1304bac6aa2f9f55ad2b20b46494f3a (patch)
treef24f560ce1f6d76a8525cde39501d8bb96c57c40 /src/bun.js/builtins/cpp/StreamInternalsBuiltins.cpp
parent7060008b83bec6be201ce08cfab7e12fc366991c (diff)
downloadbun-73fba0c5f1304bac6aa2f9f55ad2b20b46494f3a.tar.gz
bun-73fba0c5f1304bac6aa2f9f55ad2b20b46494f3a.tar.zst
bun-73fba0c5f1304bac6aa2f9f55ad2b20b46494f3a.zip
Codegen
Diffstat (limited to 'src/bun.js/builtins/cpp/StreamInternalsBuiltins.cpp')
-rw-r--r--src/bun.js/builtins/cpp/StreamInternalsBuiltins.cpp23
1 files changed, 15 insertions, 8 deletions
diff --git a/src/bun.js/builtins/cpp/StreamInternalsBuiltins.cpp b/src/bun.js/builtins/cpp/StreamInternalsBuiltins.cpp
index 685fe4507..7886b5678 100644
--- a/src/bun.js/builtins/cpp/StreamInternalsBuiltins.cpp
+++ b/src/bun.js/builtins/cpp/StreamInternalsBuiltins.cpp
@@ -196,11 +196,13 @@ const char* const s_streamInternalsValidateAndNormalizeQueuingStrategyCode =
const JSC::ConstructAbility s_streamInternalsCreateFIFOCodeConstructAbility = JSC::ConstructAbility::CannotConstruct;
const JSC::ConstructorKind s_streamInternalsCreateFIFOCodeConstructorKind = JSC::ConstructorKind::None;
const JSC::ImplementationVisibility s_streamInternalsCreateFIFOCodeImplementationVisibility = JSC::ImplementationVisibility::Private;
-const int s_streamInternalsCreateFIFOCodeLength = 2764;
+const int s_streamInternalsCreateFIFOCodeLength = 2863;
static const JSC::Intrinsic s_streamInternalsCreateFIFOCodeIntrinsic = JSC::NoIntrinsic;
const char* const s_streamInternalsCreateFIFOCode =
"(function () {\n" \
" \"use strict\";\n" \
+ " var slice = @Array.prototype.slice;\n" \
+ "\n" \
" class Denqueue {\n" \
" constructor() {\n" \
" this._head = 0;\n" \
@@ -209,6 +211,11 @@ const char* const s_streamInternalsCreateFIFOCode =
" this._capacityMask = 0x3;\n" \
" this._list = @newArrayWithSize(4);\n" \
" }\n" \
+ "\n" \
+ " _head;\n" \
+ " _tail;\n" \
+ " _capacityMask;\n" \
+ " _list;\n" \
" \n" \
" size() {\n" \
" if (this._head === this._tail) return 0;\n" \
@@ -225,12 +232,12 @@ const char* const s_streamInternalsCreateFIFOCode =
" }\n" \
" \n" \
" shift() {\n" \
- " var head = this._head;\n" \
- " if (head === this._tail) return @undefined;\n" \
- " var item = this._list[head];\n" \
- " @putByValDirect(this._list, head, @undefined);\n" \
- " this._head = (head + 1) & this._capacityMask;\n" \
- " if (head < 2 && this._tail > 10000 && this._tail <= this._list.length >>> 2) this._shrinkArray();\n" \
+ " var { _head: head, _tail, _list, _capacityMask } = this;\n" \
+ " if (head === _tail) return @undefined;\n" \
+ " var item = _list[head];\n" \
+ " @putByValDirect(_list, head, @undefined);\n" \
+ " head = this._head = (head + 1) & _capacityMask;\n" \
+ " if (head < 2 && _tail > 10000 && _tail <= _list.length >>> 2) this._shrinkArray();\n" \
" return item;\n" \
" }\n" \
"\n" \
@@ -265,7 +272,7 @@ const char* const s_streamInternalsCreateFIFOCode =
" for (var i = 0; i < _tail; i++) @putByValDirect(array, j++, list[i]);\n" \
" return array;\n" \
" } else {\n" \
- " return @Array.prototype.slice.@call(list, this._head, this._tail);\n" \
+ " return slice.@call(list, this._head, this._tail);\n" \
" }\n" \
" }\n" \
" \n" \