--- a/js/src/asmjs/AsmJSLink.cpp
+++ b/js/src/asmjs/AsmJSLink.cpp
@@ -39,17 +39,17 @@
#endif
#include "vm/ArrayBufferObject.h"
#include "vm/SharedArrayObject.h"
#include "vm/StringBuffer.h"
#include "jsobjinlines.h"
#include "vm/ArrayBufferObject-inl.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace js::jit;
using mozilla::IsNaN;
using mozilla::PodZero;
static bool
--- a/js/src/asmjs/AsmJSValidate.h
+++ b/js/src/asmjs/AsmJSValidate.h
@@ -21,17 +21,17 @@
#include "mozilla/MathAlgorithms.h"
#include <stddef.h>
#include "jsutil.h"
#include "js/TypeDecls.h"
-#include "vm/ObjectImpl.h"
+#include "vm/NativeObject.h"
namespace js {
class ExclusiveContext;
namespace frontend {
template <typename ParseHandler> class Parser;
template <typename ParseHandler> struct ParseContext;
class FullParseHandler;
--- a/js/src/builtin/Intl.cpp
+++ b/js/src/builtin/Intl.cpp
@@ -34,17 +34,17 @@
#include "vm/DateTime.h"
#include "vm/GlobalObject.h"
#include "vm/Interpreter.h"
#include "vm/Stack.h"
#include "vm/StringBuffer.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using mozilla::IsFinite;
using mozilla::IsNegativeZero;
#if ENABLE_INTL_API
using icu::Locale;
--- a/js/src/builtin/MapObject.cpp
+++ b/js/src/builtin/MapObject.cpp
@@ -14,17 +14,17 @@
#include "gc/Marking.h"
#include "js/Utility.h"
#include "vm/GlobalObject.h"
#include "vm/Interpreter.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using mozilla::ArrayLength;
using mozilla::Forward;
using mozilla::IsNaN;
using mozilla::Move;
using mozilla::NumberEqualsInt32;
--- a/js/src/builtin/Object.cpp
+++ b/js/src/builtin/Object.cpp
@@ -10,17 +10,17 @@
#include "jscntxt.h"
#include "frontend/BytecodeCompiler.h"
#include "vm/StringBuffer.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace js::types;
using js::frontend::IsIdentifier;
using mozilla::ArrayLength;
--- a/js/src/builtin/RegExp.cpp
+++ b/js/src/builtin/RegExp.cpp
@@ -11,17 +11,17 @@
#include "jscntxt.h"
#include "irregexp/RegExpParser.h"
#include "vm/RegExpStatics.h"
#include "vm/StringBuffer.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace js::types;
using mozilla::ArrayLength;
using mozilla::Maybe;
bool
--- a/js/src/builtin/SymbolObject.cpp
+++ b/js/src/builtin/SymbolObject.cpp
@@ -5,17 +5,17 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "builtin/SymbolObject.h"
#include "vm/StringBuffer.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/Symbol-inl.h"
using JS::Symbol;
using namespace js;
const Class SymbolObject::class_ = {
"Symbol",
JSCLASS_HAS_RESERVED_SLOTS(RESERVED_SLOTS) | JSCLASS_HAS_CACHED_PROTO(JSProto_Symbol),
--- a/js/src/builtin/SymbolObject.h
+++ b/js/src/builtin/SymbolObject.h
@@ -2,17 +2,17 @@
* vim: set ts=8 sts=4 et sw=4 tw=99:
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef builtin_SymbolObject_h
#define builtin_SymbolObject_h
-#include "vm/ObjectImpl.h"
+#include "vm/NativeObject.h"
#include "vm/Symbol.h"
namespace js {
class SymbolObject : public NativeObject
{
/* Stores this Symbol object's [[PrimitiveValue]]. */
static const unsigned PRIMITIVE_VALUE_SLOT = 0;
--- a/js/src/builtin/TestingFunctions.cpp
+++ b/js/src/builtin/TestingFunctions.cpp
@@ -31,17 +31,17 @@
#include "vm/Interpreter.h"
#include "vm/ProxyObject.h"
#include "vm/SavedStacks.h"
#include "vm/TraceLogging.h"
#include "jscntxtinlines.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace JS;
using mozilla::ArrayLength;
using mozilla::Move;
using mozilla::UniquePtr;
--- a/js/src/builtin/TypedObject.cpp
+++ b/js/src/builtin/TypedObject.cpp
@@ -6,31 +6,29 @@
#include "builtin/TypedObject.h"
#include "mozilla/Casting.h"
#include "mozilla/CheckedInt.h"
#include "jscompartment.h"
#include "jsfun.h"
-#include "jsobj.h"
#include "jsutil.h"
#include "gc/Marking.h"
#include "js/Vector.h"
#include "vm/GlobalObject.h"
-#include "vm/ObjectImpl.h"
#include "vm/String.h"
#include "vm/StringBuffer.h"
#include "vm/TypedArrayObject.h"
#include "jsatominlines.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/Shape-inl.h"
using mozilla::AssertedCast;
using mozilla::CheckedInt32;
using mozilla::DebugOnly;
using namespace js;
--- a/js/src/builtin/WeakSetObject.cpp
+++ b/js/src/builtin/WeakSetObject.cpp
@@ -10,17 +10,17 @@
#include "jscntxt.h"
#include "jsiter.h"
#include "builtin/SelfHostingDefines.h"
#include "vm/GlobalObject.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace JS;
const Class WeakSetObject::class_ = {
"WeakSet",
JSCLASS_IMPLEMENTS_BARRIERS | JSCLASS_HAS_CACHED_PROTO(JSProto_WeakSet) |
JSCLASS_HAS_RESERVED_SLOTS(WeakSetObject::RESERVED_SLOTS),
--- a/js/src/builtin/WeakSetObject.h
+++ b/js/src/builtin/WeakSetObject.h
@@ -2,17 +2,17 @@
* vim: set ts=8 sts=4 et sw=4 tw=99:
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef builtin_WeakSetObject_h
#define builtin_WeakSetObject_h
-#include "vm/ObjectImpl.h"
+#include "vm/NativeObject.h"
namespace js {
class WeakSetObject : public NativeObject
{
public:
static const unsigned RESERVED_SLOTS = 1;
--- a/js/src/devtools/rootAnalysis/computeGCTypes.js
+++ b/js/src/devtools/rootAnalysis/computeGCTypes.js
@@ -119,17 +119,17 @@ function addGCPointer(name, child, why)
if (name in structureParents) {
for (var field of structureParents[name]) {
var [ holder, fieldName ] = field;
addGCPointer(holder, name, fieldName);
}
}
}
-addGCType('js::ObjectImpl');
+addGCType('JSObject');
addGCType('JSString');
addGCType('js::Shape');
addGCType('js::BaseShape');
addGCType('JSScript');
addGCType('js::LazyScript');
addGCType('js::ion::IonCode');
addGCPointer('JS::Value');
addGCPointer('jsid');
--- a/js/src/frontend/BytecodeEmitter.cpp
+++ b/js/src/frontend/BytecodeEmitter.cpp
@@ -34,17 +34,17 @@
#include "vm/Stack.h"
#include "jsatominlines.h"
#include "jsobjinlines.h"
#include "jsscriptinlines.h"
#include "frontend/ParseMaps-inl.h"
#include "frontend/ParseNode-inl.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/ScopeObject-inl.h"
using namespace js;
using namespace js::gc;
using namespace js::frontend;
using mozilla::DebugOnly;
using mozilla::NumberIsInt32;
--- a/js/src/gc/ForkJoinNursery.cpp
+++ b/js/src/gc/ForkJoinNursery.cpp
@@ -16,17 +16,17 @@
#include "gc/Heap.h"
#include "jit/IonFrames.h"
#include "jit/RematerializedFrame.h"
#include "vm/ArrayObject.h"
#include "vm/ForkJoin.h"
#include "jsgcinlines.h"
#include "gc/Nursery-inl.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
// The ForkJoinNursery provides an object nursery for movable object
// types for one ForkJoin worker thread. There is a one-to-one
// correspondence between ForkJoinNursery and ForkJoinContext.
//
// For a general overview of how the ForkJoinNursery fits into the
// overall PJS system, see the comment block in vm/ForkJoin.h.
//
--- a/js/src/gc/Nursery.cpp
+++ b/js/src/gc/Nursery.cpp
@@ -24,17 +24,17 @@
#include "vm/Debugger.h"
#if defined(DEBUG)
#include "vm/ScopeObject.h"
#endif
#include "vm/TypedArrayObject.h"
#include "jsgcinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace gc;
using mozilla::ArrayLength;
using mozilla::PodCopy;
using mozilla::PodZero;
--- a/js/src/jit/BaselineCompiler.cpp
+++ b/js/src/jit/BaselineCompiler.cpp
@@ -18,17 +18,17 @@
# include "jit/PerfSpewer.h"
#endif
#include "jit/VMFunctions.h"
#include "vm/TraceLogging.h"
#include "jsscriptinlines.h"
#include "vm/Interpreter-inl.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace js::jit;
BaselineCompiler::BaselineCompiler(JSContext *cx, TempAllocator &alloc, JSScript *script)
: BaselineCompilerSpecific(cx, alloc, script),
modifiesArguments_(false)
{
--- a/js/src/jit/IonBuilder.cpp
+++ b/js/src/jit/IonBuilder.cpp
@@ -24,17 +24,17 @@
#include "jsinferinlines.h"
#include "jsobjinlines.h"
#include "jsopcodeinlines.h"
#include "jsscriptinlines.h"
#include "jit/CompileInfo-inl.h"
#include "jit/ExecutionMode-inl.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace js::jit;
using mozilla::AssertedCast;
using mozilla::DebugOnly;
using mozilla::Maybe;
--- a/js/src/jit/MCallOptimize.cpp
+++ b/js/src/jit/MCallOptimize.cpp
@@ -12,17 +12,17 @@
#include "jit/IonBuilder.h"
#include "jit/Lowering.h"
#include "jit/MIR.h"
#include "jit/MIRGraph.h"
#include "vm/ArgumentsObject.h"
#include "jsscriptinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/StringObject-inl.h"
using mozilla::ArrayLength;
namespace js {
namespace jit {
IonBuilder::InliningStatus
--- a/js/src/jit/ParallelFunctions.cpp
+++ b/js/src/jit/ParallelFunctions.cpp
@@ -10,17 +10,17 @@
#include "jit/arm/Simulator-arm.h"
#include "jit/mips/Simulator-mips.h"
#include "jit/RematerializedFrame.h"
#include "vm/ArrayObject.h"
#include "jsgcinlines.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace jit;
using mozilla::IsInRange;
using JS::AutoCheckCannotGC;
--- a/js/src/jit/Recover.cpp
+++ b/js/src/jit/Recover.cpp
@@ -19,17 +19,17 @@
#include "jit/JitFrameIterator.h"
#include "jit/JitSpewer.h"
#include "jit/MIR.h"
#include "jit/MIRGraph.h"
#include "jit/VMFunctions.h"
#include "vm/Interpreter.h"
#include "vm/Interpreter-inl.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace js::jit;
bool
MNode::writeRecoverData(CompactBufferWriter &writer) const
{
MOZ_CRASH("This instruction is not serializable");
--- a/js/src/jit/VMFunctions.cpp
+++ b/js/src/jit/VMFunctions.cpp
@@ -19,17 +19,17 @@
#include "vm/TraceLogging.h"
#include "jsinferinlines.h"
#include "jit/BaselineFrame-inl.h"
#include "jit/IonFrames-inl.h"
#include "vm/Debugger-inl.h"
#include "vm/Interpreter-inl.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/StringObject-inl.h"
using namespace js;
using namespace js::jit;
namespace js {
namespace jit {
--- a/js/src/jsapi.cpp
+++ b/js/src/jsapi.cpp
@@ -86,17 +86,17 @@
#include "vm/Xdr.h"
#include "jsatominlines.h"
#include "jsfuninlines.h"
#include "jsinferinlines.h"
#include "jsscriptinlines.h"
#include "vm/Interpreter-inl.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/String-inl.h"
using namespace js;
using namespace js::gc;
using namespace js::types;
using mozilla::Maybe;
using mozilla::PodCopy;
@@ -3686,17 +3686,18 @@ static const Class prop_iter_class = {
JS_PUBLIC_API(JSObject *)
JS_NewPropertyIterator(JSContext *cx, HandleObject obj)
{
AssertHeapIsIdle(cx);
CHECK_REQUEST(cx);
assertSameCompartment(cx, obj);
- NativeObject *iterobj = NewNativeObjectWithClassProto(cx, &prop_iter_class, nullptr, obj);
+ RootedNativeObject iterobj(cx, NewNativeObjectWithClassProto(cx, &prop_iter_class,
+ nullptr, obj));
if (!iterobj)
return nullptr;
int index;
if (obj->isNative()) {
/* Native case: start with the last property in obj. */
iterobj->setPrivateGCThing(obj->lastProperty());
index = -1;
--- a/js/src/jsarray.cpp
+++ b/js/src/jsarray.cpp
@@ -34,17 +34,17 @@
#include "vm/StringBuffer.h"
#include "vm/TypedArrayCommon.h"
#include "jsatominlines.h"
#include "vm/ArgumentsObject-inl.h"
#include "vm/ArrayObject-inl.h"
#include "vm/Interpreter-inl.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/Runtime-inl.h"
using namespace js;
using namespace js::gc;
using namespace js::types;
using mozilla::Abs;
using mozilla::ArrayLength;
--- a/js/src/jsfriendapi.cpp
+++ b/js/src/jsfriendapi.cpp
@@ -24,17 +24,17 @@
#include "builtin/TestingFunctions.h"
#include "proxy/DeadObjectProxy.h"
#include "vm/ArgumentsObject.h"
#include "vm/WrapperObject.h"
#include "jsobjinlines.h"
#include "jsscriptinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/ScopeObject-inl.h"
using namespace js;
using namespace JS;
using mozilla::Move;
using mozilla::PodArrayZero;
using mozilla::UniquePtr;
--- a/js/src/jsgc.h
+++ b/js/src/jsgc.h
@@ -15,17 +15,17 @@
#include "mozilla/TypeTraits.h"
#include "jslock.h"
#include "js/GCAPI.h"
#include "js/SliceBudget.h"
#include "js/Vector.h"
-#include "vm/ObjectImpl.h"
+#include "vm/NativeObject.h"
namespace js {
namespace gc {
class ForkJoinNursery;
}
unsigned GetCPUCount();
--- a/js/src/jsinfer.cpp
+++ b/js/src/jsinfer.cpp
@@ -31,17 +31,17 @@
#include "vm/Shape.h"
#include "jsatominlines.h"
#include "jsgcinlines.h"
#include "jsobjinlines.h"
#include "jsscriptinlines.h"
#include "jit/ExecutionMode-inl.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace js::gc;
using namespace js::types;
using mozilla::DebugOnly;
using mozilla::Maybe;
using mozilla::PodArrayZero;
--- a/js/src/jsiter.cpp
+++ b/js/src/jsiter.cpp
@@ -31,17 +31,17 @@
#include "vm/Shape.h"
#include "vm/StopIterationObject.h"
#include "vm/TypedArrayCommon.h"
#include "jsinferinlines.h"
#include "jsobjinlines.h"
#include "jsscriptinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/Stack-inl.h"
#include "vm/String-inl.h"
using namespace js;
using namespace js::gc;
using JS::ForOfIterator;
using mozilla::ArrayLength;
--- a/js/src/jsnum.cpp
+++ b/js/src/jsnum.cpp
@@ -29,18 +29,18 @@
#include "jstypes.h"
#include "vm/GlobalObject.h"
#include "vm/NumericConversions.h"
#include "vm/StringBuffer.h"
#include "jsatominlines.h"
+#include "vm/NativeObject-inl.h"
#include "vm/NumberObject-inl.h"
-#include "vm/ObjectImpl-inl.h"
#include "vm/String-inl.h"
using namespace js;
using namespace js::types;
using mozilla::Abs;
using mozilla::ArrayLength;
using mozilla::MinNumberValue;
--- a/js/src/jsobj.cpp
+++ b/js/src/jsobj.cpp
@@ -55,18 +55,18 @@
#include "jsatominlines.h"
#include "jsboolinlines.h"
#include "jscntxtinlines.h"
#include "jscompartmentinlines.h"
#include "vm/ArrayObject-inl.h"
#include "vm/BooleanObject-inl.h"
#include "vm/Interpreter-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/NumberObject-inl.h"
-#include "vm/ObjectImpl-inl.h"
#include "vm/Runtime-inl.h"
#include "vm/Shape-inl.h"
#include "vm/StringObject-inl.h"
using namespace js;
using namespace js::gc;
using namespace js::types;
--- a/js/src/json.cpp
+++ b/js/src/json.cpp
@@ -20,17 +20,17 @@
#include "vm/Interpreter.h"
#include "vm/JSONParser.h"
#include "vm/StringBuffer.h"
#include "jsatominlines.h"
#include "jsboolinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace js::gc;
using namespace js::types;
using mozilla::IsFinite;
using mozilla::Maybe;
using mozilla::RangedPtr;
--- a/js/src/jsscript.h
+++ b/js/src/jsscript.h
@@ -17,17 +17,17 @@
#include "jslock.h"
#include "jsopcode.h"
#include "jstypes.h"
#include "gc/Barrier.h"
#include "gc/Rooting.h"
#include "jit/IonCode.h"
#include "js/UbiNode.h"
-#include "vm/ObjectImpl.h"
+#include "vm/NativeObject.h"
#include "vm/Shape.h"
namespace JS {
struct ScriptSourceInfo;
}
namespace js {
--- a/js/src/moz.build
+++ b/js/src/moz.build
@@ -246,17 +246,17 @@ UNIFIED_SOURCES += [
'vm/ForkJoin.cpp',
'vm/GlobalObject.cpp',
'vm/HelperThreads.cpp',
'vm/Id.cpp',
'vm/Interpreter.cpp',
'vm/JSONParser.cpp',
'vm/MemoryMetrics.cpp',
'vm/Monitor.cpp',
- 'vm/ObjectImpl.cpp',
+ 'vm/NativeObject.cpp',
'vm/OldDebugAPI.cpp',
'vm/PIC.cpp',
'vm/Probes.cpp',
'vm/PropertyKey.cpp',
'vm/ProxyObject.cpp',
'vm/RegExpObject.cpp',
'vm/RegExpStatics.cpp',
'vm/Runtime.cpp',
--- a/js/src/proxy/Proxy.cpp
+++ b/js/src/proxy/Proxy.cpp
@@ -18,17 +18,17 @@
#include "proxy/ScriptedDirectProxyHandler.h"
#include "proxy/ScriptedIndirectProxyHandler.h"
#include "vm/WrapperObject.h"
#include "jsatominlines.h"
#include "jsinferinlines.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace js::gc;
void
js::AutoEnterPolicy::reportErrorIfExceptionIsNotPending(JSContext *cx, jsid id)
{
if (JS_IsExceptionPending(cx))
--- a/js/src/vm/ArgumentsObject.h
+++ b/js/src/vm/ArgumentsObject.h
@@ -5,17 +5,17 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef vm_ArgumentsObject_h
#define vm_ArgumentsObject_h
#include "mozilla/MemoryReporting.h"
#include "gc/Barrier.h"
-#include "vm/ObjectImpl.h"
+#include "vm/NativeObject.h"
namespace js {
class AbstractFramePtr;
class ScriptFrameIter;
namespace jit {
class IonJSFrameLayout;
--- a/js/src/vm/ArrayBufferObject.cpp
+++ b/js/src/vm/ArrayBufferObject.cpp
@@ -43,17 +43,17 @@
#include "vm/Interpreter.h"
#include "vm/NumericConversions.h"
#include "vm/WrapperObject.h"
#include "jsatominlines.h"
#include "jsinferinlines.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/Shape-inl.h"
using mozilla::DebugOnly;
using namespace js;
using namespace js::gc;
using namespace js::types;
--- a/js/src/vm/ArrayObject.h
+++ b/js/src/vm/ArrayObject.h
@@ -2,17 +2,17 @@
* vim: set ts=8 sts=4 et sw=4 tw=99:
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef vm_ArrayObject_h
#define vm_ArrayObject_h
-#include "vm/ObjectImpl.h"
+#include "vm/NativeObject.h"
namespace js {
class ArrayObject : public NativeObject
{
public:
// Array(x) eagerly allocates dense elements if x <= this value. Without
// the subtraction the max would roll over to the next power-of-two (4096)
--- a/js/src/vm/BooleanObject.h
+++ b/js/src/vm/BooleanObject.h
@@ -4,17 +4,17 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef vm_BooleanObject_h
#define vm_BooleanObject_h
#include "jsbool.h"
-#include "vm/ObjectImpl.h"
+#include "vm/NativeObject.h"
namespace js {
class BooleanObject : public NativeObject
{
/* Stores this Boolean object's [[PrimitiveValue]]. */
static const unsigned PRIMITIVE_VALUE_SLOT = 0;
--- a/js/src/vm/Debugger.cpp
+++ b/js/src/vm/Debugger.cpp
@@ -26,17 +26,17 @@
#include "vm/SPSProfiler.h"
#include "vm/WrapperObject.h"
#include "jsgcinlines.h"
#include "jsobjinlines.h"
#include "jsopcodeinlines.h"
#include "jsscriptinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/Stack-inl.h"
using namespace js;
using JS::dbg::Builder;
using js::frontend::IsIdentifier;
using mozilla::ArrayLength;
using mozilla::Maybe;
--- a/js/src/vm/DebuggerMemory.cpp
+++ b/js/src/vm/DebuggerMemory.cpp
@@ -18,17 +18,17 @@
#include "js/Debug.h"
#include "js/UbiNode.h"
#include "js/UbiNodeTraverse.h"
#include "vm/Debugger.h"
#include "vm/GlobalObject.h"
#include "vm/SavedStacks.h"
#include "vm/Debugger-inl.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using JS::ubi::BreadthFirst;
using JS::ubi::Edge;
using JS::ubi::Node;
using mozilla::Maybe;
--- a/js/src/vm/ErrorObject.cpp
+++ b/js/src/vm/ErrorObject.cpp
@@ -8,17 +8,17 @@
#include "vm/ErrorObject-inl.h"
#include "jsexn.h"
#include "vm/GlobalObject.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/Shape-inl.h"
using namespace js;
using mozilla::PodZero;
/* static */ Shape *
js::ErrorObject::assignInitialShape(ExclusiveContext *cx, Handle<ErrorObject*> obj)
{
--- a/js/src/vm/ErrorObject.h
+++ b/js/src/vm/ErrorObject.h
@@ -4,17 +4,17 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef vm_ErrorObject_h_
#define vm_ErrorObject_h_
#include "mozilla/ArrayUtils.h"
-#include "vm/ObjectImpl.h"
+#include "vm/NativeObject.h"
#include "vm/Shape.h"
struct JSExnPrivate;
/*
* Initialize the exception constructor/prototype hierarchy.
*/
extern JSObject *
--- a/js/src/vm/GlobalObject.cpp
+++ b/js/src/vm/GlobalObject.cpp
@@ -32,17 +32,17 @@
#include "vm/RegExpStaticsObject.h"
#include "vm/StopIterationObject.h"
#include "vm/WeakMapObject.h"
#include "jscompartmentinlines.h"
#include "jsobjinlines.h"
#include "jsscriptinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
struct ProtoTableEntry {
const Class *clasp;
ClassInitializerOp init;
};
--- a/js/src/vm/Interpreter.cpp
+++ b/js/src/vm/Interpreter.cpp
@@ -43,17 +43,17 @@
#include "jsatominlines.h"
#include "jsboolinlines.h"
#include "jsfuninlines.h"
#include "jsinferinlines.h"
#include "jsscriptinlines.h"
#include "jit/IonFrames-inl.h"
#include "vm/Debugger-inl.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/Probes-inl.h"
#include "vm/ScopeObject-inl.h"
#include "vm/Stack-inl.h"
using namespace js;
using namespace js::gc;
using namespace js::types;
--- a/js/src/vm/JSONParser.cpp
+++ b/js/src/vm/JSONParser.cpp
@@ -13,17 +13,17 @@
#include "jsarray.h"
#include "jscompartment.h"
#include "jsnum.h"
#include "jsprf.h"
#include "vm/StringBuffer.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using mozilla::RangedPtr;
JSONParserBase::~JSONParserBase()
{
for (size_t i = 0; i < stack.length(); i++) {
--- a/js/src/vm/PIC.cpp
+++ b/js/src/vm/PIC.cpp
@@ -5,20 +5,20 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "vm/PIC.h"
#include "jscntxt.h"
#include "jsobj.h"
#include "gc/Marking.h"
#include "vm/GlobalObject.h"
-#include "vm/ObjectImpl.h"
#include "vm/SelfHosting.h"
+
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
using namespace js::gc;
bool
js::ForOfPIC::Chain::initialize(JSContext *cx)
{
MOZ_ASSERT(!initialized_);
--- a/js/src/vm/ProxyObject.h
+++ b/js/src/vm/ProxyObject.h
@@ -4,17 +4,17 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef vm_ProxyObject_h
#define vm_ProxyObject_h
#include "jsproxy.h"
-#include "vm/ObjectImpl.h"
+#include "vm/NativeObject.h"
namespace js {
// This is the base class for the various kinds of proxy objects. It's never
// instantiated.
class ProxyObject : public JSObject
{
// These are just local renamings of the slot constants that are part of
--- a/js/src/vm/RegExpObject.cpp
+++ b/js/src/vm/RegExpObject.cpp
@@ -16,17 +16,17 @@
#include "vm/MatchPairs.h"
#include "vm/RegExpStatics.h"
#include "vm/StringBuffer.h"
#include "vm/TraceLogging.h"
#include "vm/Xdr.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/Shape-inl.h"
using namespace js;
using mozilla::ArrayLength;
using mozilla::DebugOnly;
using mozilla::Maybe;
using mozilla::PodCopy;
--- a/js/src/vm/RegExpStatics.cpp
+++ b/js/src/vm/RegExpStatics.cpp
@@ -3,17 +3,17 @@
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "vm/RegExpStatics.h"
#include "vm/RegExpStaticsObject.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using namespace js;
/*
* RegExpStatics allocates memory -- in order to keep the statics stored
* per-global and not leak, we create a js::Class to wrap the C++ instance and
* provide an appropriate finalizer. We lazily create and store an instance of
* that js::Class in a global reserved slot.
--- a/js/src/vm/SavedStacks.cpp
+++ b/js/src/vm/SavedStacks.cpp
@@ -1,15 +1,14 @@
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
* vim: set ts=8 sts=4 et sw=4 tw=99:
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-
#include "vm/SavedStacks.h"
#include "mozilla/Attributes.h"
#include <math.h>
#include "jsapi.h"
#include "jscompartment.h"
@@ -21,17 +20,17 @@
#include "gc/Marking.h"
#include "js/Vector.h"
#include "vm/Debugger.h"
#include "vm/GlobalObject.h"
#include "vm/StringBuffer.h"
#include "jscntxtinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
using mozilla::AddToHash;
using mozilla::HashString;
namespace js {
struct SavedFrame::Lookup {
Lookup(JSAtom *source, uint32_t line, uint32_t column, JSAtom *functionDisplayName,
--- a/js/src/vm/SelfHosting.cpp
+++ b/js/src/vm/SelfHosting.cpp
@@ -6,17 +6,16 @@
#include "vm/SelfHosting.h"
#include "jscntxt.h"
#include "jscompartment.h"
#include "jsdate.h"
#include "jsfriendapi.h"
#include "jshashutil.h"
-#include "jsobj.h"
#include "jsweakmap.h"
#include "jswrapper.h"
#include "selfhosted.out.h"
#include "builtin/Intl.h"
#include "builtin/Object.h"
#include "builtin/SelfHostingDefines.h"
#include "builtin/TypedObject.h"
@@ -27,18 +26,18 @@
#include "vm/Interpreter.h"
#include "vm/String.h"
#include "vm/TypedArrayCommon.h"
#include "jsfuninlines.h"
#include "jsscriptinlines.h"
#include "vm/BooleanObject-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/NumberObject-inl.h"
-#include "vm/ObjectImpl-inl.h"
#include "vm/StringObject-inl.h"
using namespace js;
using namespace js::selfhosted;
using JS::AutoCheckCannotGC;
static void
--- a/js/src/vm/Shape.cpp
+++ b/js/src/vm/Shape.cpp
@@ -18,17 +18,17 @@
#include "jsobj.h"
#include "js/HashTable.h"
#include "jscntxtinlines.h"
#include "jsobjinlines.h"
#include "gc/ForkJoinNursery-inl.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/Runtime-inl.h"
using namespace js;
using namespace js::gc;
using mozilla::CeilingLog2Size;
using mozilla::DebugOnly;
using mozilla::PodZero;
--- a/js/src/vm/TypedArrayObject.cpp
+++ b/js/src/vm/TypedArrayObject.cpp
@@ -37,17 +37,17 @@
#include "vm/NumericConversions.h"
#include "vm/TypedArrayCommon.h"
#include "vm/WrapperObject.h"
#include "jsatominlines.h"
#include "jsinferinlines.h"
#include "jsobjinlines.h"
-#include "vm/ObjectImpl-inl.h"
+#include "vm/NativeObject-inl.h"
#include "vm/Shape-inl.h"
using namespace js;
using namespace js::gc;
using namespace js::types;
using mozilla::IsNaN;
using mozilla::NegativeInfinity;