Welcome to mirror list, hosted at ThFree Co, Russian Federation.

call-intrinsic-fuzzing.js « mjsunit « test « v8 « deps - github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 3945c8d49d1275b7819e7eb8204b67a67dce52d3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// Copyright 2020 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.

// Flags: --allow-natives-for-fuzzing

// Test whitelisted/blacklisted intrinsics in the context of fuzzing.

// Blacklisted intrinsics are replaced with undefined.
assertEquals(undefined, %GetOptimizationStatus(function (){}));

// Blacklisted intrinsics can have wrong arguments.
assertEquals(undefined, %GetOptimizationStatus(1, 2, 3, 4));

// We don't care if an intrinsic actually exists.
assertEquals(undefined, %FooBar());

// Check whitelisted intrinsic.
assertNotEquals(undefined, %IsBeingInterpreted());

// Whitelisted runtime functions with too few args are ignored.
assertEquals(undefined, %DeoptimizeFunction());

// Superfluous arguments are ignored.
%DeoptimizeFunction(function() {}, undefined);
assertNotEquals(undefined, %IsBeingInterpreted(1, 2, 3));