summaryrefslogtreecommitdiffstats
path: root/chromium/v8/src/builtins/base.tq
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2019-09-23 16:06:29 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2019-09-24 11:41:55 +0000
commitbac1035f131c0b95b75fb39ffd1a39652843de9f (patch)
tree44839fddbea648d54e4be47bcfbe4a5979bacd29 /chromium/v8/src/builtins/base.tq
parent271a6c3487a14599023a9106329505597638d793 (diff)
BASELINE: Update Chromium to 77.0.3865.98
Change-Id: Ice85979eb8b64af9a3c649d719bec6ea14ac3bf7 Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
Diffstat (limited to 'chromium/v8/src/builtins/base.tq')
-rw-r--r--chromium/v8/src/builtins/base.tq6
1 files changed, 6 insertions, 0 deletions
diff --git a/chromium/v8/src/builtins/base.tq b/chromium/v8/src/builtins/base.tq
index 4aa1d578374..07af1f441f8 100644
--- a/chromium/v8/src/builtins/base.tq
+++ b/chromium/v8/src/builtins/base.tq
@@ -336,10 +336,16 @@ macro NewJSObject(implicit context: Context)(): JSObject {
};
}
+extern macro HasPrototypeSlot(JSFunction): bool;
+
macro GetDerivedMap(implicit context: Context)(
target: JSFunction, newTarget: JSReceiver): Map {
try {
const constructor = Cast<JSFunction>(newTarget) otherwise SlowPath;
+ if (!HasPrototypeSlot(constructor)) {
+ goto SlowPath;
+ }
+ assert(IsConstructor(constructor));
const map =
Cast<Map>(constructor.prototype_or_initial_map) otherwise SlowPath;
if (LoadConstructorOrBackPointer(map) != target) {