global-hash.js 584 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
// Copyright 2015 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.

var global = this;

assertEquals("object", typeof global);  // Global object.

var s = new Set();
s.add(global); // Puts a hash code on the global object.
assertTrue(s.has(global));
for (var i = 0; i < 100; i++) {
  // Force rehash. Global object is placed according to the hash code that it
  // gets in the C++ runtime.
  s.add(i);
}

// Hopefully still findable using the JS hash code.
assertTrue(s.has(global));