#include "src/builtins/builtins-utils-inl.h"
#include "src/builtins/builtins.h"
#include "src/execution/protectors-inl.h"
#include "src/execution/protectors.h"
#include "src/handles/maybe-handles-inl.h"
#include "src/heap/heap-inl.h"
#include "src/logging/counters.h"
#include "src/numbers/conversions.h"
#include "src/objects/js-array-buffer-inl.h"
#include "src/objects/objects-inl.h"
namespace v8 {
namespace internal {
#define CHECK_SHARED(expected, name, method) …
#define CHECK_RESIZABLE(expected, name, method) …
namespace {
Tagged<Object> ConstructBuffer(Isolate* isolate, Handle<JSFunction> target,
Handle<JSReceiver> new_target,
DirectHandle<Object> length,
Handle<Object> max_length,
InitializedFlag initialized) { … }
}
BUILTIN(ArrayBufferConstructor) { … }
BUILTIN(ArrayBufferConstructor_DoNotInitialize) { … }
static Tagged<Object> SliceHelper(BuiltinArguments args, Isolate* isolate,
const char* kMethodName, bool is_shared) { … }
BUILTIN(SharedArrayBufferPrototypeSlice) { … }
BUILTIN(ArrayBufferPrototypeSlice) { … }
static Tagged<Object> ResizeHelper(BuiltinArguments args, Isolate* isolate,
const char* kMethodName, bool is_shared) { … }
BUILTIN(SharedArrayBufferPrototypeGetByteLength) { … }
BUILTIN(ArrayBufferPrototypeResize) { … }
namespace {
enum PreserveResizability { … };
Tagged<Object> ArrayBufferTransfer(Isolate* isolate,
Handle<JSArrayBuffer> array_buffer,
Handle<Object> new_length,
PreserveResizability preserve_resizability,
const char* method_name) { … }
}
BUILTIN(ArrayBufferPrototypeTransfer) { … }
BUILTIN(ArrayBufferPrototypeTransferToFixedLength) { … }
BUILTIN(SharedArrayBufferPrototypeGrow) { … }
}
}