summaryrefslogtreecommitdiff
path: root/chromium/v8/src/code-stub-assembler.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/v8/src/code-stub-assembler.h')
-rw-r--r--chromium/v8/src/code-stub-assembler.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/chromium/v8/src/code-stub-assembler.h b/chromium/v8/src/code-stub-assembler.h
index 7c7777e1acc..a2d5e800156 100644
--- a/chromium/v8/src/code-stub-assembler.h
+++ b/chromium/v8/src/code-stub-assembler.h
@@ -867,6 +867,10 @@ class V8_EXPORT_PRIVATE CodeStubAssembler : public compiler::CodeAssembler {
Node* ThrowIfNotInstanceType(Node* context, Node* value,
InstanceType instance_type,
char const* method_name);
+
+ void ThrowRangeError(Node* context, MessageTemplate::Template message,
+ Node* arg0 = nullptr, Node* arg1 = nullptr,
+ Node* arg2 = nullptr);
void ThrowTypeError(Node* context, MessageTemplate::Template message,
char const* arg0 = nullptr, char const* arg1 = nullptr);
void ThrowTypeError(Node* context, MessageTemplate::Template message,
@@ -1321,6 +1325,9 @@ class V8_EXPORT_PRIVATE CodeStubAssembler : public compiler::CodeAssembler {
Node* unique_name, Label* if_found,
Label* if_not_found, Label* if_bailout);
+ // Operating mode for TryGetOwnProperty and CallGetterIfAccessor
+ // kReturnAccessorPair is used when we're only getting the property descriptor
+ enum GetOwnPropertyMode { kCallJSGetter, kReturnAccessorPair };
// Tries to get {object}'s own {unique_name} property value. If the property
// is an accessor then it also calls a getter. If the property is a double
// field it re-wraps value in an immutable heap number.
@@ -1332,7 +1339,8 @@ class V8_EXPORT_PRIVATE CodeStubAssembler : public compiler::CodeAssembler {
Node* instance_type, Node* unique_name,
Label* if_found, Variable* var_value,
Variable* var_details, Variable* var_raw_value,
- Label* if_not_found, Label* if_bailout);
+ Label* if_not_found, Label* if_bailout,
+ GetOwnPropertyMode mode);
Node* GetProperty(Node* context, Node* receiver, Handle<Name> name) {
return GetProperty(context, receiver, HeapConstant(name));
@@ -1669,7 +1677,8 @@ class V8_EXPORT_PRIVATE CodeStubAssembler : public compiler::CodeAssembler {
Node* DescriptorArrayGetKey(Node* descriptors, Node* descriptor_number);
Node* CallGetterIfAccessor(Node* value, Node* details, Node* context,
- Node* receiver, Label* if_bailout);
+ Node* receiver, Label* if_bailout,
+ GetOwnPropertyMode mode = kCallJSGetter);
Node* TryToIntptr(Node* key, Label* miss);