v8/test/mjsunit/string-oom-replace-global-regexp-with-string.js
Peter Marshall e8c9649e25 [builtins] Increase the maximum string length on 64-bit platforms.
Increase from 2^28 - 16 to 2^30 - 25 for 64-bit platforms.

Bug: v8:6148
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
Change-Id: I3529d7ed757a7ab49a001af8641cf888db171cdb
Reviewed-on: https://chromium-review.googlesource.com/570047
Reviewed-by: Yang Guo <yangguo@chromium.org>
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46838}
2017-07-24 10:38:55 +00:00

24 lines
500 B
JavaScript

// Copyright 2014 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-syntax
var a = 'a'.repeat(32);
var b = 'b'.repeat(%StringMaxLength() / 32 + 1);
function replace1() {
a.replace(/./g, b);
}
assertThrows(replace1, RangeError);
var a = 'a'.repeat(Math.sqrt(%StringMaxLength()) + 1);
function replace2() {
a.replace(/a/g, a);
}
assertThrows(replace2, RangeError);