summaryrefslogtreecommitdiffstats
path: root/chromium/v8/src/builtins/base.tq
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/v8/src/builtins/base.tq')
-rw-r--r--chromium/v8/src/builtins/base.tq32
1 files changed, 32 insertions, 0 deletions
diff --git a/chromium/v8/src/builtins/base.tq b/chromium/v8/src/builtins/base.tq
index 20c4f4b9e03..3f5029834db 100644
--- a/chromium/v8/src/builtins/base.tq
+++ b/chromium/v8/src/builtins/base.tq
@@ -844,6 +844,8 @@ macro AllowNonNumberElements(kind: ElementsKind): ElementsKind {
extern macro AllocateZeroedFixedArray(intptr): FixedArray;
extern macro AllocateZeroedFixedDoubleArray(intptr): FixedDoubleArray;
+extern macro CalculateNewElementsCapacity(Smi): Smi;
+
extern macro CopyFixedArrayElements(
constexpr ElementsKind, FixedArray, constexpr ElementsKind, FixedArray,
intptr, intptr, intptr): void;
@@ -879,6 +881,36 @@ extern macro ExtractFixedArray(
extern builtin ExtractFastJSArray(Context, JSArray, Smi, Smi): JSArray;
+extern macro MoveElements(
+ constexpr ElementsKind, FixedArrayBase, intptr, intptr, intptr): void;
+macro TorqueMoveElements(
+ elements: FixedArray, dstIndex: intptr, srcIndex: intptr,
+ count: intptr): void {
+ MoveElements(HOLEY_ELEMENTS, elements, dstIndex, srcIndex, count);
+}
+macro TorqueMoveElements(
+ elements: FixedDoubleArray, dstIndex: intptr, srcIndex: intptr,
+ count: intptr): void {
+ MoveElements(HOLEY_DOUBLE_ELEMENTS, elements, dstIndex, srcIndex, count);
+}
+
+extern macro CopyElements(
+ constexpr ElementsKind, FixedArrayBase, intptr, FixedArrayBase, intptr,
+ intptr): void;
+macro TorqueCopyElements(
+ dstElements: FixedArray, dstIndex: intptr, srcElements: FixedArray,
+ srcIndex: intptr, count: intptr): void {
+ CopyElements(
+ HOLEY_ELEMENTS, dstElements, dstIndex, srcElements, srcIndex, count);
+}
+macro TorqueCopyElements(
+ dstElements: FixedDoubleArray, dstIndex: intptr,
+ srcElements: FixedDoubleArray, srcIndex: intptr, count: intptr): void {
+ CopyElements(
+ HOLEY_DOUBLE_ELEMENTS, dstElements, dstIndex, srcElements, srcIndex,
+ count);
+}
+
macro LoadElementNoHole<T: type>(a: JSArray, index: Smi): Object
labels IfHole;