Diff
Modified: trunk/Source/_javascript_Core/API/JSValueRef.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/API/JSValueRef.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/API/JSValueRef.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -36,6 +36,7 @@
#include "JSCallbackObject.h"
#include "JSGlobalObject.h"
#include "JSONObject.h"
+#include "JSObjectRefPrivate.h"
#include "JSString.h"
#include "LiteralParser.h"
#include "Protect.h"
Modified: trunk/Source/_javascript_Core/ChangeLog (244087 => 244088)
--- trunk/Source/_javascript_Core/ChangeLog 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/ChangeLog 2019-04-09 18:50:00 UTC (rev 244088)
@@ -1,3 +1,71 @@
+2019-04-09 Ross Kirsling <ross.kirsl...@sony.com>
+
+ JSC should build successfully even with -DENABLE_UNIFIED_BUILDS=OFF
+ https://bugs.webkit.org/show_bug.cgi?id=193073
+
+ Reviewed by Keith Miller.
+
+ * bytecompiler/BytecodeGenerator.cpp:
+ (JSC::BytecodeGenerator::emitEqualityOpImpl):
+ (JSC::BytecodeGenerator::emitEqualityOp): Deleted.
+ * bytecompiler/BytecodeGenerator.h:
+ (JSC::BytecodeGenerator::emitEqualityOp):
+ Factor out the logic that uses the template parameter and keep it in the header.
+
+ * jit/JITPropertyAccess.cpp:
+ List off the template specializations needed by JITOperations.cpp.
+ This is unfortunate but at least there are only two (x2) by definition?
+ Trying to do away with this incurs a severe domino effect...
+
+ * API/JSValueRef.cpp:
+ * b3/B3OptimizeAssociativeExpressionTrees.cpp:
+ * b3/air/AirHandleCalleeSaves.cpp:
+ * builtins/BuiltinNames.cpp:
+ * bytecode/AccessCase.cpp:
+ * bytecode/BytecodeIntrinsicRegistry.cpp:
+ * bytecode/BytecodeIntrinsicRegistry.h:
+ * bytecode/BytecodeRewriter.cpp:
+ * bytecode/BytecodeUseDef.h:
+ * bytecode/CodeBlock.cpp:
+ * bytecode/InstanceOfAccessCase.cpp:
+ * bytecode/MetadataTable.cpp:
+ * bytecode/PolyProtoAccessChain.cpp:
+ * bytecode/StructureSet.cpp:
+ * bytecompiler/NodesCodegen.cpp:
+ * dfg/DFGCFAPhase.cpp:
+ * dfg/DFGPureValue.cpp:
+ * heap/GCSegmentedArray.h:
+ * heap/HeapInlines.h:
+ * heap/IsoSubspace.cpp:
+ * heap/LocalAllocator.cpp:
+ * heap/LocalAllocator.h:
+ * heap/LocalAllocatorInlines.h:
+ * heap/MarkingConstraintSolver.cpp:
+ * inspector/ScriptArguments.cpp:
+ (Inspector::ScriptArguments::isEqual const):
+ * inspector/ScriptCallStackFactory.cpp:
+ * interpreter/CallFrame.h:
+ * interpreter/Interpreter.cpp:
+ * interpreter/StackVisitor.cpp:
+ * llint/LLIntEntrypoint.cpp:
+ * runtime/ArrayIteratorPrototype.cpp:
+ * runtime/BigIntPrototype.cpp:
+ * runtime/CachedTypes.cpp:
+ * runtime/ErrorType.cpp:
+ * runtime/IndexingType.cpp:
+ * runtime/JSCellInlines.h:
+ * runtime/JSImmutableButterfly.h:
+ * runtime/Operations.h:
+ * runtime/RegExpCachedResult.cpp:
+ * runtime/RegExpConstructor.cpp:
+ * runtime/RegExpGlobalData.cpp:
+ * runtime/StackFrame.h:
+ * wasm/WasmSignature.cpp:
+ * wasm/js/JSToWasm.cpp:
+ * wasm/js/JSToWasmICCallee.cpp:
+ * wasm/js/WebAssemblyFunction.h:
+ Fix includes / forward declarations (and a couple of nearby clang warnings).
+
2019-04-09 Don Olmstead <don.olmst...@sony.com>
[CMake] Apple builds should use ICU_INCLUDE_DIRS
Modified: trunk/Source/_javascript_Core/b3/B3OptimizeAssociativeExpressionTrees.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/b3/B3OptimizeAssociativeExpressionTrees.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/b3/B3OptimizeAssociativeExpressionTrees.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -31,7 +31,7 @@
#include "B3BasicBlock.h"
#include "B3Const32Value.h"
#include "B3Const64Value.h"
-#include "B3InsertionSet.h"
+#include "B3InsertionSetInlines.h"
#include "B3Opcode.h"
#include "B3PhaseScope.h"
#include "B3Procedure.h"
Modified: trunk/Source/_javascript_Core/b3/air/AirHandleCalleeSaves.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/b3/air/AirHandleCalleeSaves.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/b3/air/AirHandleCalleeSaves.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -30,6 +30,7 @@
#include "AirCode.h"
#include "AirInstInlines.h"
+#include "RegisterSet.h"
namespace JSC { namespace B3 { namespace Air {
Modified: trunk/Source/_javascript_Core/builtins/BuiltinNames.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/builtins/BuiltinNames.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/builtins/BuiltinNames.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -26,6 +26,8 @@
#include "config.h"
#include "BuiltinNames.h"
+#include "IdentifierInlines.h"
+
#if COMPILER(MSVC)
#pragma warning(push)
#pragma warning(disable:4307)
Modified: trunk/Source/_javascript_Core/bytecode/AccessCase.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/bytecode/AccessCase.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/bytecode/AccessCase.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -34,10 +34,9 @@
#include "DirectArguments.h"
#include "GetterSetter.h"
#include "GetterSetterAccessCase.h"
-#include "HeapInlines.h"
#include "InstanceOfAccessCase.h"
#include "IntrinsicGetterAccessCase.h"
-#include "JSCJSValueInlines.h"
+#include "JSCInlines.h"
#include "JSModuleEnvironment.h"
#include "JSModuleNamespaceObject.h"
#include "LinkBuffer.h"
@@ -45,7 +44,6 @@
#include "PolymorphicAccess.h"
#include "ScopedArguments.h"
#include "ScratchRegisterAllocator.h"
-#include "SlotVisitorInlines.h"
#include "StructureStubInfo.h"
#include "SuperSampler.h"
#include "ThunkGenerators.h"
Modified: trunk/Source/_javascript_Core/bytecode/BytecodeIntrinsicRegistry.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/bytecode/BytecodeIntrinsicRegistry.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/bytecode/BytecodeIntrinsicRegistry.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -32,7 +32,7 @@
#include "BytecodeGenerator.h"
#include "IterationKind.h"
#include "JSAsyncGeneratorFunction.h"
-#include "JSCJSValueInlines.h"
+#include "JSCInlines.h"
#include "JSGeneratorFunction.h"
#include "JSGlobalObject.h"
#include "JSModuleLoader.h"
Modified: trunk/Source/_javascript_Core/bytecode/BytecodeIntrinsicRegistry.h (244087 => 244088)
--- trunk/Source/_javascript_Core/bytecode/BytecodeIntrinsicRegistry.h 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/bytecode/BytecodeIntrinsicRegistry.h 2019-04-09 18:50:00 UTC (rev 244088)
@@ -35,7 +35,6 @@
class BytecodeGenerator;
class BytecodeIntrinsicNode;
class RegisterID;
-class Identifier;
#define JSC_COMMON_BYTECODE_INTRINSIC_FUNCTIONS_EACH_NAME(macro) \
macro(argument) \
Modified: trunk/Source/_javascript_Core/bytecode/BytecodeRewriter.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/bytecode/BytecodeRewriter.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/bytecode/BytecodeRewriter.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -27,7 +27,7 @@
#include "config.h"
#include "BytecodeRewriter.h"
-#include "HeapInlines.h"
+#include "JSCInlines.h"
#include "PreciseJumpTargetsInlines.h"
#include <wtf/BubbleSort.h>
Modified: trunk/Source/_javascript_Core/bytecode/BytecodeUseDef.h (244087 => 244088)
--- trunk/Source/_javascript_Core/bytecode/BytecodeUseDef.h 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/bytecode/BytecodeUseDef.h 2019-04-09 18:50:00 UTC (rev 244088)
@@ -25,6 +25,7 @@
#pragma once
+#include "BytecodeStructs.h"
#include "CodeBlock.h"
#include "Instruction.h"
#include <wtf/Forward.h>
Modified: trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -108,9 +108,6 @@
#endif
namespace JSC {
-namespace CodeBlockInternal {
-static constexpr bool verbose = false;
-} // namespace CodeBlockInternal
const ClassInfo CodeBlock::s_info = {
"CodeBlock", nullptr, nullptr, nullptr,
Modified: trunk/Source/_javascript_Core/bytecode/InstanceOfAccessCase.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/bytecode/InstanceOfAccessCase.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/bytecode/InstanceOfAccessCase.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -28,6 +28,8 @@
#if ENABLE(JIT)
+#include "JSCInlines.h"
+
namespace JSC {
std::unique_ptr<AccessCase> InstanceOfAccessCase::create(
Modified: trunk/Source/_javascript_Core/bytecode/MetadataTable.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/bytecode/MetadataTable.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/bytecode/MetadataTable.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -27,6 +27,7 @@
#include "MetadataTable.h"
#include "CodeBlock.h"
+#include "JSCInlines.h"
#include "OpcodeInlines.h"
#include "UnlinkedMetadataTableInlines.h"
#include <wtf/FastMalloc.h>
Modified: trunk/Source/_javascript_Core/bytecode/PolyProtoAccessChain.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/bytecode/PolyProtoAccessChain.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/bytecode/PolyProtoAccessChain.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -26,6 +26,7 @@
#include "config.h"
#include "PolyProtoAccessChain.h"
+#include "JSCInlines.h"
#include "JSObject.h"
namespace JSC {
Modified: trunk/Source/_javascript_Core/bytecode/StructureSet.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/bytecode/StructureSet.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/bytecode/StructureSet.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -26,6 +26,7 @@
#include "config.h"
#include "StructureSet.h"
+#include "JSCInlines.h"
#include "TrackedReferences.h"
#include <wtf/CommaPrinter.h>
Modified: trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -1728,8 +1728,7 @@
return srcDst;
}
-template<typename EqOp>
-RegisterID* BytecodeGenerator::emitEqualityOp(RegisterID* dst, RegisterID* src1, RegisterID* src2)
+bool BytecodeGenerator::emitEqualityOpImpl(RegisterID* dst, RegisterID* src1, RegisterID* src2)
{
if (m_lastInstruction->is<OpTypeof>()) {
auto op = m_lastInstruction->as<OpTypeof>();
@@ -1741,48 +1740,47 @@
if (value == "undefined") {
rewind();
OpIsUndefined::emit(this, dst, op.m_value);
- return dst;
+ return true;
}
if (value == "boolean") {
rewind();
OpIsBoolean::emit(this, dst, op.m_value);
- return dst;
+ return true;
}
if (value == "number") {
rewind();
OpIsNumber::emit(this, dst, op.m_value);
- return dst;
+ return true;
}
if (value == "string") {
rewind();
OpIsCellWithType::emit(this, dst, op.m_value, StringType);
- return dst;
+ return true;
}
if (value == "symbol") {
rewind();
OpIsCellWithType::emit(this, dst, op.m_value, SymbolType);
- return dst;
+ return true;
}
if (Options::useBigInt() && value == "bigint") {
rewind();
OpIsCellWithType::emit(this, dst, op.m_value, BigIntType);
- return dst;
+ return true;
}
if (value == "object") {
rewind();
OpIsObjectOrNull::emit(this, dst, op.m_value);
- return dst;
+ return true;
}
if (value == "function") {
rewind();
OpIsFunction::emit(this, dst, op.m_value);
- return dst;
+ return true;
}
}
}
- EqOp::emit(this, dst, src1, src2);
- return dst;
+ return false;
}
void BytecodeGenerator::emitTypeProfilerExpressionInfo(const JSTextPosition& startDivot, const JSTextPosition& endDivot)
Modified: trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.h (244087 => 244088)
--- trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.h 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.h 2019-04-09 18:50:00 UTC (rev 244088)
@@ -712,7 +712,15 @@
RegisterID* emitBinaryOp(OpcodeID, RegisterID* dst, RegisterID* src1, RegisterID* src2, OperandTypes);
template<typename EqOp>
- RegisterID* emitEqualityOp(RegisterID* dst, RegisterID* src1, RegisterID* src2);
+ RegisterID* emitEqualityOp(RegisterID* dst, RegisterID* src1, RegisterID* src2)
+ {
+ if (!emitEqualityOpImpl(dst, src1, src2))
+ EqOp::emit(this, dst, src1, src2);
+ return dst;
+ }
+
+ bool emitEqualityOpImpl(RegisterID* dst, RegisterID* src1, RegisterID* src2);
+
RegisterID* emitCreateThis(RegisterID* dst);
void emitTDZCheck(RegisterID* target);
bool needsTDZCheck(const Variable&);
Modified: trunk/Source/_javascript_Core/bytecompiler/NodesCodegen.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/bytecompiler/NodesCodegen.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/bytecompiler/NodesCodegen.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -41,6 +41,7 @@
#include "Lexer.h"
#include "Parser.h"
#include "StackAlignment.h"
+#include "UnlinkedMetadataTableInlines.h"
#include "YarrFlags.h"
#include <wtf/Assertions.h>
#include <wtf/Threading.h>
Modified: trunk/Source/_javascript_Core/dfg/DFGCFAPhase.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/dfg/DFGCFAPhase.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/dfg/DFGCFAPhase.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -31,6 +31,7 @@
#include "DFGAbstractInterpreterInlines.h"
#include "DFGBlockSet.h"
#include "DFGClobberSet.h"
+#include "DFGClobberize.h"
#include "DFGGraph.h"
#include "DFGInPlaceAbstractState.h"
#include "DFGPhase.h"
Modified: trunk/Source/_javascript_Core/dfg/DFGPureValue.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/dfg/DFGPureValue.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/dfg/DFGPureValue.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -28,8 +28,6 @@
#if ENABLE(DFG_JIT)
-#include "DFGGraph.h"
-
namespace JSC { namespace DFG {
void PureValue::dump(PrintStream& out) const
Modified: trunk/Source/_javascript_Core/heap/GCSegmentedArray.h (244087 => 244088)
--- trunk/Source/_javascript_Core/heap/GCSegmentedArray.h 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/heap/GCSegmentedArray.h 2019-04-09 18:50:00 UTC (rev 244088)
@@ -27,6 +27,7 @@
#include <wtf/DoublyLinkedList.h>
#include <wtf/Forward.h>
+#include <wtf/Noncopyable.h>
namespace JSC {
Modified: trunk/Source/_javascript_Core/heap/HeapInlines.h (244087 => 244088)
--- trunk/Source/_javascript_Core/heap/HeapInlines.h 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/heap/HeapInlines.h 2019-04-09 18:50:00 UTC (rev 244088)
@@ -29,7 +29,6 @@
#include "Heap.h"
#include "HeapCellInlines.h"
#include "IndexingHeader.h"
-#include "JSCallee.h"
#include "JSCast.h"
#include "Structure.h"
#include <type_traits>
Modified: trunk/Source/_javascript_Core/heap/IsoSubspace.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/heap/IsoSubspace.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/heap/IsoSubspace.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -29,6 +29,7 @@
#include "AllocatorInlines.h"
#include "BlockDirectoryInlines.h"
#include "IsoAlignedMemoryAllocator.h"
+#include "IsoSubspaceInlines.h"
#include "LocalAllocatorInlines.h"
namespace JSC {
Modified: trunk/Source/_javascript_Core/heap/LocalAllocator.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/heap/LocalAllocator.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/heap/LocalAllocator.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -27,8 +27,12 @@
#include "LocalAllocator.h"
#include "AllocatingScope.h"
+#include "FreeListInlines.h"
+#include "GCDeferralContext.h"
+#include "JSCInlines.h"
#include "LocalAllocatorInlines.h"
#include "Options.h"
+#include "SuperSampler.h"
namespace JSC {
Modified: trunk/Source/_javascript_Core/heap/LocalAllocator.h (244087 => 244088)
--- trunk/Source/_javascript_Core/heap/LocalAllocator.h 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/heap/LocalAllocator.h 2019-04-09 18:50:00 UTC (rev 244088)
@@ -25,6 +25,7 @@
#pragma once
+#include "AllocationFailureMode.h"
#include "FreeList.h"
#include "MarkedBlock.h"
#include <wtf/Noncopyable.h>
Modified: trunk/Source/_javascript_Core/heap/LocalAllocatorInlines.h (244087 => 244088)
--- trunk/Source/_javascript_Core/heap/LocalAllocatorInlines.h 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/heap/LocalAllocatorInlines.h 2019-04-09 18:50:00 UTC (rev 244088)
@@ -25,6 +25,7 @@
#pragma once
+#include "HeapInlines.h"
#include "LocalAllocator.h"
namespace JSC {
Modified: trunk/Source/_javascript_Core/heap/MarkingConstraintSolver.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/heap/MarkingConstraintSolver.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/heap/MarkingConstraintSolver.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -27,6 +27,7 @@
#include "MarkingConstraintSolver.h"
#include "JSCInlines.h"
+#include "MarkingConstraintSet.h"
namespace JSC {
Modified: trunk/Source/_javascript_Core/inspector/ScriptArguments.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/inspector/ScriptArguments.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/inspector/ScriptArguments.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -35,6 +35,7 @@
#include "CatchScope.h"
#include "JSCInlines.h"
#include "ProxyObject.h"
+#include "StrongInlines.h"
namespace Inspector {
@@ -110,7 +111,7 @@
return false;
} else {
auto scope = DECLARE_CATCH_SCOPE(state->vm());
- bool result = JSValue::strictEqual(state, a, b);
+ bool result = JSC::JSValue::strictEqual(state, a, b);
scope.clearException();
if (!result)
return false;
Modified: trunk/Source/_javascript_Core/inspector/ScriptCallStackFactory.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/inspector/ScriptCallStackFactory.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/inspector/ScriptCallStackFactory.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -42,6 +42,7 @@
#include "ScriptArguments.h"
#include "ScriptCallFrame.h"
#include "StackVisitor.h"
+#include "StrongInlines.h"
#include <wtf/text/WTFString.h>
using namespace JSC;
Modified: trunk/Source/_javascript_Core/interpreter/CallFrame.h (244087 => 244088)
--- trunk/Source/_javascript_Core/interpreter/CallFrame.h 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/interpreter/CallFrame.h 2019-04-09 18:50:00 UTC (rev 244088)
@@ -258,8 +258,8 @@
}
void convertToStackOverflowFrame(VM&, CodeBlock* codeBlockToKeepAliveUntilFrameIsUnwound);
- inline bool isStackOverflowFrame() const;
- inline bool isWasmFrame() const;
+ bool isStackOverflowFrame() const;
+ bool isWasmFrame() const;
void setArgumentCountIncludingThis(int count) { static_cast<Register*>(this)[CallFrameSlot::argumentCount].payload() = count; }
void setCallee(JSObject* callee) { static_cast<Register*>(this)[CallFrameSlot::callee] = callee; }
Modified: trunk/Source/_javascript_Core/interpreter/Interpreter.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/interpreter/Interpreter.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/interpreter/Interpreter.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -81,7 +81,6 @@
#include "VMInlines.h"
#include "VMInspector.h"
#include "VirtualRegister.h"
-
#include <limits.h>
#include <stdio.h>
#include <wtf/NeverDestroyed.h>
@@ -95,6 +94,11 @@
#include "JIT.h"
#endif
+#if ENABLE(WEBASSEMBLY)
+#include "WasmContextInlines.h"
+#include "WebAssemblyFunction.h"
+#endif
+
namespace JSC {
JSValue eval(CallFrame* callFrame)
Modified: trunk/Source/_javascript_Core/interpreter/StackVisitor.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/interpreter/StackVisitor.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/interpreter/StackVisitor.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -26,6 +26,7 @@
#include "config.h"
#include "StackVisitor.h"
+#include "CallFrameInlines.h"
#include "ClonedArguments.h"
#include "DebuggerPrimitives.h"
#include "InlineCallFrame.h"
Modified: trunk/Source/_javascript_Core/jit/JITPropertyAccess.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/jit/JITPropertyAccess.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/jit/JITPropertyAccess.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -44,6 +44,7 @@
#include "ScopedArgumentsTable.h"
#include "SlowPathCall.h"
#include "StructureStubInfo.h"
+#include "ThunkGenerators.h"
#include <wtf/ScopedLambda.h>
#include <wtf/StringPrintStream.h>
@@ -1439,6 +1440,10 @@
MacroAssembler::repatchJump(byValInfo->badTypeJump, CodeLocationLabel<JITStubRoutinePtrTag>(byValInfo->stubRoutine->code().code()));
MacroAssembler::repatchCall(CodeLocationCall<NoPtrTag>(MacroAssemblerCodePtr<NoPtrTag>(returnAddress)), FunctionPtr<OperationPtrTag>(isDirect ? operationDirectPutByValGeneric : operationPutByValGeneric));
}
+// This function is only consumed from another translation unit (JITOperations.cpp),
+// so we list off the two expected specializations in advance.
+template void JIT::privateCompilePutByVal<OpPutByVal>(const ConcurrentJSLocker&, ByValInfo*, ReturnAddressPtr, JITArrayMode);
+template void JIT::privateCompilePutByVal<OpPutByValDirect>(const ConcurrentJSLocker&, ByValInfo*, ReturnAddressPtr, JITArrayMode);
template<typename Op>
void JIT::privateCompilePutByValWithCachedId(ByValInfo* byValInfo, ReturnAddressPtr returnAddress, PutKind putKind, const Identifier& propertyName)
@@ -1473,6 +1478,10 @@
MacroAssembler::repatchJump(byValInfo->notIndexJump, CodeLocationLabel<JITStubRoutinePtrTag>(byValInfo->stubRoutine->code().code()));
MacroAssembler::repatchCall(CodeLocationCall<NoPtrTag>(MacroAssemblerCodePtr<NoPtrTag>(returnAddress)), FunctionPtr<OperationPtrTag>(putKind == Direct ? operationDirectPutByValGeneric : operationPutByValGeneric));
}
+// This function is only consumed from another translation unit (JITOperations.cpp),
+// so we list off the two expected specializations in advance.
+template void JIT::privateCompilePutByValWithCachedId<OpPutByVal>(ByValInfo*, ReturnAddressPtr, PutKind, const Identifier&);
+template void JIT::privateCompilePutByValWithCachedId<OpPutByValDirect>(ByValInfo*, ReturnAddressPtr, PutKind, const Identifier&);
JIT::JumpList JIT::emitDoubleLoad(const Instruction*, PatchableJump& badType)
{
Modified: trunk/Source/_javascript_Core/llint/LLIntEntrypoint.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/llint/LLIntEntrypoint.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/llint/LLIntEntrypoint.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -30,6 +30,7 @@
#include "JITCode.h"
#include "JSCellInlines.h"
#include "JSObject.h"
+#include "LLIntData.h"
#include "LLIntThunks.h"
#include "LowLevelInterpreter.h"
#include "MaxFrameExtentForSlowPathCall.h"
Modified: trunk/Source/_javascript_Core/runtime/ArrayIteratorPrototype.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/runtime/ArrayIteratorPrototype.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/runtime/ArrayIteratorPrototype.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -27,6 +27,7 @@
#include "ArrayIteratorPrototype.h"
#include "IteratorOperations.h"
+#include "JSCBuiltins.h"
#include "JSCInlines.h"
#include "JSCJSValueInlines.h"
#include "JSCellInlines.h"
Modified: trunk/Source/_javascript_Core/runtime/BigIntPrototype.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/runtime/BigIntPrototype.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/runtime/BigIntPrototype.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -27,6 +27,7 @@
#include "config.h"
#include "BigIntPrototype.h"
+#include "BigIntObject.h"
#include "Error.h"
#include "JSBigInt.h"
#include "JSCBuiltins.h"
Modified: trunk/Source/_javascript_Core/runtime/CachedTypes.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/runtime/CachedTypes.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/runtime/CachedTypes.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -28,6 +28,7 @@
#include "BytecodeCacheVersion.h"
#include "BytecodeLivenessAnalysis.h"
+#include "JSCInlines.h"
#include "JSImmutableButterfly.h"
#include "JSTemplateObjectDescriptor.h"
#include "ScopedArgumentsTable.h"
Modified: trunk/Source/_javascript_Core/runtime/ErrorType.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/runtime/ErrorType.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/runtime/ErrorType.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -26,6 +26,8 @@
#include "config.h"
#include "ErrorType.h"
+#include <wtf/PrintStream.h>
+
namespace JSC {
ASCIILiteral errorTypeName(ErrorType errorType)
Modified: trunk/Source/_javascript_Core/runtime/IndexingType.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/runtime/IndexingType.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/runtime/IndexingType.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -26,6 +26,8 @@
#include "config.h"
#include "IndexingType.h"
+#include "JSCInlines.h"
+
namespace JSC {
IndexingType leastUpperBoundOfIndexingTypes(IndexingType a, IndexingType b)
Modified: trunk/Source/_javascript_Core/runtime/JSCellInlines.h (244087 => 244088)
--- trunk/Source/_javascript_Core/runtime/JSCellInlines.h 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/runtime/JSCellInlines.h 2019-04-09 18:50:00 UTC (rev 244088)
@@ -33,6 +33,7 @@
#include "DeferGC.h"
#include "FreeListInlines.h"
#include "Handle.h"
+#include "HeapInlines.h"
#include "IsoSubspaceInlines.h"
#include "JSBigInt.h"
#include "JSCast.h"
@@ -41,6 +42,7 @@
#include "JSString.h"
#include "LocalAllocatorInlines.h"
#include "MarkedBlock.h"
+#include "SlotVisitorInlines.h"
#include "Structure.h"
#include "Symbol.h"
#include <wtf/CompilationThread.h>
Modified: trunk/Source/_javascript_Core/runtime/JSImmutableButterfly.h (244087 => 244088)
--- trunk/Source/_javascript_Core/runtime/JSImmutableButterfly.h 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/runtime/JSImmutableButterfly.h 2019-04-09 18:50:00 UTC (rev 244088)
@@ -27,6 +27,7 @@
#include "Butterfly.h"
#include "IndexingHeader.h"
+#include "JSCJSValueInlines.h"
#include "JSCell.h"
#include "Structure.h"
#include "VirtualRegister.h"
Modified: trunk/Source/_javascript_Core/runtime/Operations.h (244087 => 244088)
--- trunk/Source/_javascript_Core/runtime/Operations.h 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/runtime/Operations.h 2019-04-09 18:50:00 UTC (rev 244088)
@@ -24,7 +24,7 @@
#include "CallFrame.h"
#include "ExceptionHelpers.h"
#include "JSBigInt.h"
-#include "JSCJSValue.h"
+#include "JSCJSValueInlines.h"
#include <wtf/Variant.h>
namespace JSC {
Modified: trunk/Source/_javascript_Core/runtime/RegExpCachedResult.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/runtime/RegExpCachedResult.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/runtime/RegExpCachedResult.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -27,6 +27,7 @@
#include "RegExpCachedResult.h"
#include "JSCInlines.h"
+#include "RegExpCache.h"
#include "RegExpMatchesArray.h"
namespace JSC {
Modified: trunk/Source/_javascript_Core/runtime/RegExpConstructor.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/runtime/RegExpConstructor.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/runtime/RegExpConstructor.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -24,9 +24,9 @@
#include "Error.h"
#include "GetterSetter.h"
+#include "JSCInlines.h"
#include "RegExpGlobalDataInlines.h"
#include "RegExpPrototype.h"
-#include "StructureInlines.h"
#include "YarrFlags.h"
namespace JSC {
Modified: trunk/Source/_javascript_Core/runtime/RegExpGlobalData.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/runtime/RegExpGlobalData.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/runtime/RegExpGlobalData.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -26,7 +26,7 @@
#include "config.h"
#include "RegExpGlobalData.h"
-#include "JSCJSValueInlines.h"
+#include "JSCInlines.h"
#include "JSString.h"
namespace JSC {
Modified: trunk/Source/_javascript_Core/runtime/StackFrame.h (244087 => 244088)
--- trunk/Source/_javascript_Core/runtime/StackFrame.h 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/runtime/StackFrame.h 2019-04-09 18:50:00 UTC (rev 244088)
@@ -26,6 +26,7 @@
#pragma once
#include "Heap.h"
+#include "VM.h"
#include "WasmIndexOrName.h"
#include "WriteBarrier.h"
#include <limits.h>
Modified: trunk/Source/_javascript_Core/wasm/WasmSignature.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/wasm/WasmSignature.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/wasm/WasmSignature.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -28,6 +28,7 @@
#if ENABLE(WEBASSEMBLY)
+#include "WasmSignatureInlines.h"
#include <wtf/FastMalloc.h>
#include <wtf/HashFunctions.h>
#include <wtf/PrintStream.h>
Modified: trunk/Source/_javascript_Core/wasm/js/JSToWasm.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/wasm/js/JSToWasm.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/wasm/js/JSToWasm.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -29,6 +29,7 @@
#if ENABLE(WEBASSEMBLY)
#include "CCallHelpers.h"
+#include "JSCInlines.h"
#include "JSWebAssemblyInstance.h"
#include "JSWebAssemblyRuntimeError.h"
#include "MaxFrameExtentForSlowPathCall.h"
Modified: trunk/Source/_javascript_Core/wasm/js/JSToWasmICCallee.cpp (244087 => 244088)
--- trunk/Source/_javascript_Core/wasm/js/JSToWasmICCallee.cpp 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/wasm/js/JSToWasmICCallee.cpp 2019-04-09 18:50:00 UTC (rev 244088)
@@ -28,6 +28,7 @@
#if ENABLE(WEBASSEMBLY)
+#include "JSCInlines.h"
#include "WebAssemblyFunction.h"
namespace JSC {
Modified: trunk/Source/_javascript_Core/wasm/js/WebAssemblyFunction.h (244087 => 244088)
--- trunk/Source/_javascript_Core/wasm/js/WebAssemblyFunction.h 2019-04-09 18:45:33 UTC (rev 244087)
+++ trunk/Source/_javascript_Core/wasm/js/WebAssemblyFunction.h 2019-04-09 18:50:00 UTC (rev 244088)
@@ -27,6 +27,7 @@
#if ENABLE(WEBASSEMBLY)
+#include "ArityCheckMode.h"
#include "JSToWasmICCallee.h"
#include "MacroAssemblerCodeRef.h"
#include "WasmCallee.h"