Bug 1252713 - Fix FILES_PER_UNIFIED_FILE=1 bustage in js/. r=terrence
authorNick Fitzgerald <fitzgen@gmail.com>
Wed, 02 Mar 2016 09:15:00 -0500
changeset 324916 4b2af03fba36ffd29389f1fc41653d623ae39d61
parent 324915 ecdee9d5be9067614e67bdae995821b50e94e12f
child 324917 dc9c310332818b6cfc82efd39eb642637c5a1a61
push id1128
push userjlund@mozilla.com
push dateWed, 01 Jun 2016 01:31:59 +0000
treeherdermozilla-release@fe0d30de989d [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersterrence
bugs1252713
milestone47.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1252713 - Fix FILES_PER_UNIFIED_FILE=1 bustage in js/. r=terrence
js/src/gc/Policy.h
js/src/jsapi-tests/testForceLexicalInitialization.cpp
js/src/jsapi-tests/testWasmLEB128.cpp
js/src/jsapi-tests/testXDR.cpp
--- a/js/src/gc/Policy.h
+++ b/js/src/gc/Policy.h
@@ -5,23 +5,26 @@
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 /* JS Garbage Collector. */
 
 #ifndef gc_Policy_h
 #define gc_Policy_h
 
 #include "mozilla/TypeTraits.h"
+#include "gc/Barrier.h"
+#include "gc/Marking.h"
 #include "js/GCPolicyAPI.h"
 
 // Forward declare the types we're defining policies for. This file is
 // included in all places that define GC things, so the real definitions
 // will be available when we do template expansion, allowing for use of
 // static members in the underlying types. We cannot, however, use
 // static_assert to verify relations between types.
+class JSLinearString;
 namespace js {
 class AccessorShape;
 class ArgumentsObject;
 class ArrayBufferObject;
 class ArrayBufferObjectMaybeShared;
 class ArrayBufferViewObject;
 class ArrayObject;
 class BaseShape;
--- a/js/src/jsapi-tests/testForceLexicalInitialization.cpp
+++ b/js/src/jsapi-tests/testForceLexicalInitialization.cpp
@@ -8,31 +8,31 @@
 #include "jsfriendapi.h"
 #include "jsapi-tests/tests.h"
 #include "vm/ScopeObject.h"
 
 BEGIN_TEST(testForceLexicalInitialization)
 {
     // Attach an uninitialized lexical to a scope and ensure that it's
     // set to undefined
-    RootedGlobalObject g(cx, cx->global());
-    Rooted<ClonedBlockObject*> scope(cx, ClonedBlockObject::createGlobal(cx, g));
+    js::RootedGlobalObject g(cx, cx->global());
+    JS::Rooted<js::ClonedBlockObject*> scope(cx, js::ClonedBlockObject::createGlobal(cx, g));
 
-    RootedValue uninitialized(cx, MagicValue(JS_UNINITIALIZED_LEXICAL));
-    RootedPropertyName name(cx, Atomize(cx, "foopi", 4)->asPropertyName());
-    RootedId id(cx, NameToId(name));
+    JS::RootedValue uninitialized(cx, JS::MagicValue(JS_UNINITIALIZED_LEXICAL));
+    js::RootedPropertyName name(cx, Atomize(cx, "foopi", 4)->asPropertyName());
+    JS::RootedId id(cx, NameToId(name));
     unsigned attrs = JSPROP_ENUMERATE | JSPROP_PERMANENT;
 
     NativeDefineProperty(cx, scope, id, uninitialized, nullptr, nullptr, attrs);
 
     // Verify that "foopi" is uninitialized
-    const Value v = scope->getSlot(scope->lookup(cx, id)->slot());
+    const JS::Value v = scope->getSlot(scope->lookup(cx, id)->slot());
     CHECK(v.isMagic(JS_UNINITIALIZED_LEXICAL));
 
     ForceLexicalInitialization(cx, scope);
 
     // Verify that "foopi" has been initialized to undefined
-    const Value v2 = scope->getSlot(scope->lookup(cx, id)->slot());
+    const JS::Value v2 = scope->getSlot(scope->lookup(cx, id)->slot());
     CHECK(v2.isUndefined());
 
     return true;
 }
 END_TEST(testForceLexicalInitialization)
--- a/js/src/jsapi-tests/testWasmLEB128.cpp
+++ b/js/src/jsapi-tests/testWasmLEB128.cpp
@@ -3,17 +3,17 @@
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 #include <stdlib.h>
 
 #include "asmjs/WasmBinary.h"
 
 #include "jsapi-tests/tests.h"
 
-static bool WriteValidBytes(wasm::Encoder& encoder, bool* passed)
+static bool WriteValidBytes(js::wasm::Encoder& encoder, bool* passed)
 {
     *passed = false;
     if (!encoder.empty())
         return true;
 
     // These remain the same under LEB128 unsigned encoding
     if (!encoder.writeVarU32(0x0) ||
         !encoder.writeVarU32(0x1) ||
@@ -35,16 +35,17 @@ static bool WriteValidBytes(wasm::Encode
     if (encoder.bytecodeOffset() != 7)
         return true;
     *passed = true;
     return true;
 }
 
 BEGIN_TEST(testWasmLEB128_encoding)
 {
+    using namespace js;
     using namespace wasm;
 
     Bytecode bc;
     Encoder encoder(bc);
 
     bool passed;
     if (!WriteValidBytes(encoder, &passed))
         return false;
@@ -64,16 +65,17 @@ BEGIN_TEST(testWasmLEB128_encoding)
     if (i + 1 < bc.length())
         CHECK(bc[i++] == 0x00);
     return true;
 }
 END_TEST(testWasmLEB128_encoding)
 
 BEGIN_TEST(testWasmLEB128_valid_decoding)
 {
+    using namespace js;
     using namespace wasm;
 
     Bytecode bc;
     if (!bc.append(0x0) || !bc.append(0x1) || !bc.append(0x42))
         return false;
 
     if (!bc.append(0x80) || !bc.append(0x01))
         return false;
@@ -114,16 +116,17 @@ BEGIN_TEST(testWasmLEB128_valid_decoding
         CHECK(decoder.done());
     }
     return true;
 }
 END_TEST(testWasmLEB128_valid_decoding)
 
 BEGIN_TEST(testWasmLEB128_invalid_decoding)
 {
+    using namespace js;
     using namespace wasm;
 
     Bytecode bc;
     // Fill bits as per 28 encoded bits
     if (!bc.append(0x80) || !bc.append(0x80) || !bc.append(0x80) || !bc.append(0x80))
         return false;
 
     // Test last valid values
--- a/js/src/jsapi-tests/testXDR.cpp
+++ b/js/src/jsapi-tests/testXDR.cpp
@@ -125,17 +125,17 @@ BEGIN_TEST(testXDR_sourceMap)
     JS::RootedScript script(cx);
     for (const char** sm = sourceMaps; *sm; sm++) {
         JS::CompileOptions options(cx);
         options.setFileAndLine(__FILE__, __LINE__);
         CHECK(JS_CompileScript(cx, "", 0, options, &script));
         CHECK(script);
 
         size_t len = strlen(*sm);
-        UniqueTwoByteChars expected_wrapper(js::InflateString(cx, *sm, &len));
+        JS::UniqueTwoByteChars expected_wrapper(js::InflateString(cx, *sm, &len));
         char16_t *expected = expected_wrapper.get();
         CHECK(expected);
 
         // The script source takes responsibility of free'ing |expected|.
         CHECK(script->scriptSource()->setSourceMapURL(cx, expected));
         script = FreezeThaw(cx, script);
         CHECK(script);
         CHECK(script->scriptSource());