224ca74ae4
This makes sure the language mode of the module is correctly propagated through the WebAssembly module, so that exported functions are allocated with the correct language mode. It extends the existing {ModuleOrigin} enum to consist of three values now. R=clemensh@chromium.org TEST=mjsunit/regress/wasm/regress-985154 BUG=chromium:985154 Change-Id: Id7b566738b1e710cc5001b894022bcd0f2c01bc3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1708484 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#62826}
33 lines
945 B
JavaScript
33 lines
945 B
JavaScript
// Copyright 2019 the V8 project authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
// This file is executed separately before the correctness test case. Add here
|
|
// checking of global properties that should never differ in any configuration.
|
|
// A difference found in the prints below will prevent any further correctness
|
|
// comparison for the selected configurations to avoid flooding bugs.
|
|
|
|
print("https://crbug.com/932656");
|
|
print(Object.getOwnPropertyNames(this));
|
|
|
|
print("https://crbug.com/935800");
|
|
(function () {
|
|
function foo() {
|
|
"use asm";
|
|
function baz() {}
|
|
return {bar: baz};
|
|
}
|
|
print(Object.getOwnPropertyNames(foo().bar));
|
|
})();
|
|
|
|
print("https://crbug.com/985154");
|
|
(function () {
|
|
"use strict";
|
|
function foo() {
|
|
"use asm";
|
|
function baz() {}
|
|
return {bar: baz};
|
|
}
|
|
print(Object.getOwnPropertyNames(foo().bar));
|
|
})();
|