Diff
Modified: trunk/Source/_javascript_Core/API/JSScriptRef.cpp (261555 => 261556)
--- trunk/Source/_javascript_Core/API/JSScriptRef.cpp 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/API/JSScriptRef.cpp 2020-05-12 16:12:21 UTC (rev 261556)
@@ -39,7 +39,7 @@
using namespace JSC;
-struct OpaqueJSScript final : public SourceProvider {
+struct OpaqueJSScript : public SourceProvider {
public:
static WTF::Ref<OpaqueJSScript> create(VM& vm, const SourceOrigin& sourceOrigin, URL&& url, int startingLineNumber, const String& source)
{
@@ -46,12 +46,12 @@
return WTF::adoptRef(*new OpaqueJSScript(vm, sourceOrigin, WTFMove(url), startingLineNumber, source));
}
- unsigned hash() const final
+ unsigned hash() const override
{
return m_source.get().hash();
}
- StringView source() const final
+ StringView source() const override
{
return m_source.get();
}
@@ -66,7 +66,7 @@
{
}
- ~OpaqueJSScript() final { }
+ virtual ~OpaqueJSScript() { }
VM& m_vm;
Ref<StringImpl> m_source;
Modified: trunk/Source/_javascript_Core/ChangeLog (261555 => 261556)
--- trunk/Source/_javascript_Core/ChangeLog 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/ChangeLog 2020-05-12 16:12:21 UTC (rev 261556)
@@ -1,3 +1,16 @@
+2020-05-12 Truitt Savell <[email protected]>
+
+ Unreviewed, reverting r261542.
+
+ Broke internal builds
+
+ Reverted changeset:
+
+ "[clang-tidy] Run modernize-use-override over JSC, then ensure
+ as much as possible is final"
+ https://bugs.webkit.org/show_bug.cgi?id=211743
+ https://trac.webkit.org/changeset/261542
+
2020-05-12 Mark Lam <[email protected]>
Wasm::enableFastMemory() was called too late.
Modified: trunk/Source/_javascript_Core/b3/B3ArgumentRegValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3ArgumentRegValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3ArgumentRegValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -32,19 +32,20 @@
namespace JSC { namespace B3 {
-class JS_EXPORT_PRIVATE ArgumentRegValue final : public Value {
+class JS_EXPORT_PRIVATE ArgumentRegValue : public Value {
public:
static bool accepts(Kind kind) { return kind == ArgumentReg; }
- ~ArgumentRegValue() final;
+ ~ArgumentRegValue();
Reg argumentReg() const { return m_reg; }
B3_SPECIALIZE_VALUE_FOR_NO_CHILDREN
+protected:
+ void dumpMeta(CommaPrinter&, PrintStream&) const override;
+
private:
- void dumpMeta(CommaPrinter&, PrintStream&) const final;
-
friend class Procedure;
friend class Value;
Modified: trunk/Source/_javascript_Core/b3/B3AtomicValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3AtomicValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3AtomicValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -32,7 +32,7 @@
namespace JSC { namespace B3 {
-class JS_EXPORT_PRIVATE AtomicValue final : public MemoryValue {
+class JS_EXPORT_PRIVATE AtomicValue : public MemoryValue {
public:
static bool accepts(Kind kind)
{
@@ -39,7 +39,7 @@
return isAtom(kind.opcode());
}
- ~AtomicValue() final;
+ ~AtomicValue();
Type accessType() const { return child(0)->type(); }
@@ -47,9 +47,10 @@
B3_SPECIALIZE_VALUE_FOR_FINAL_SIZE_FIXED_CHILDREN
+protected:
+ void dumpMeta(CommaPrinter&, PrintStream&) const override;
+
private:
- void dumpMeta(CommaPrinter&, PrintStream&) const final;
-
friend class Procedure;
friend class Value;
Modified: trunk/Source/_javascript_Core/b3/B3CCallValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3CCallValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3CCallValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -32,11 +32,11 @@
namespace JSC { namespace B3 {
-class JS_EXPORT_PRIVATE CCallValue final : public Value {
+class JS_EXPORT_PRIVATE CCallValue : public Value {
public:
static bool accepts(Kind kind) { return kind == CCall; }
- ~CCallValue() final;
+ ~CCallValue();
void appendArgs(const Vector<Value*>&);
Modified: trunk/Source/_javascript_Core/b3/B3CheckSpecial.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3CheckSpecial.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3CheckSpecial.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -48,7 +48,7 @@
// - CheckSub(0, x), which turns into BranchNeg32 x.
// - CheckMul(a, b), which turns into Mul32 b, a but we pass Any for a's ValueRep.
-class CheckSpecial final : public StackmapSpecial {
+class CheckSpecial : public StackmapSpecial {
public:
// Support for hash consing these things.
class Key {
@@ -113,9 +113,9 @@
CheckSpecial(Air::Kind, unsigned numArgs, RoleMode stackmapRole = SameAsRep);
CheckSpecial(const Key&);
- ~CheckSpecial() final;
+ ~CheckSpecial();
-private:
+protected:
// Constructs and returns the Inst representing the branch that this will use.
Air::Inst hiddenBranch(const Air::Inst&) const;
@@ -133,6 +133,7 @@
void dumpImpl(PrintStream&) const final;
void deepDumpImpl(PrintStream&) const final;
+private:
Air::Kind m_checkKind;
RoleMode m_stackmapRole;
unsigned m_numCheckArgs;
Modified: trunk/Source/_javascript_Core/b3/B3CheckValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3CheckValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3CheckValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -31,7 +31,7 @@
namespace JSC { namespace B3 {
-class CheckValue final : public StackmapValue {
+class CheckValue : public StackmapValue {
public:
static bool accepts(Kind kind)
{
@@ -46,7 +46,7 @@
}
}
- ~CheckValue() final;
+ ~CheckValue();
void convertToAdd();
Modified: trunk/Source/_javascript_Core/b3/B3Const32Value.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3Const32Value.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3Const32Value.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -35,7 +35,7 @@
public:
static bool accepts(Kind kind) { return kind == Const32; }
- ~Const32Value() override;
+ ~Const32Value();
int32_t value() const { return m_value; }
Modified: trunk/Source/_javascript_Core/b3/B3Const64Value.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3Const64Value.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3Const64Value.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -35,7 +35,7 @@
public:
static bool accepts(Kind kind) { return kind == Const64; }
- ~Const64Value() override;
+ ~Const64Value();
int64_t value() const { return m_value; }
Modified: trunk/Source/_javascript_Core/b3/B3ConstDoubleValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3ConstDoubleValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3ConstDoubleValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -31,38 +31,38 @@
namespace JSC { namespace B3 {
-class JS_EXPORT_PRIVATE ConstDoubleValue final : public Value {
+class JS_EXPORT_PRIVATE ConstDoubleValue : public Value {
public:
static bool accepts(Kind kind) { return kind == ConstDouble; }
- ~ConstDoubleValue() final;
+ ~ConstDoubleValue();
double value() const { return m_value; }
- Value* negConstant(Procedure&) const final;
- Value* addConstant(Procedure&, int32_t other) const final;
- Value* addConstant(Procedure&, const Value* other) const final;
- Value* subConstant(Procedure&, const Value* other) const final;
- Value* divConstant(Procedure&, const Value* other) const final;
- Value* modConstant(Procedure&, const Value* other) const final;
- Value* mulConstant(Procedure&, const Value* other) const final;
- Value* bitAndConstant(Procedure&, const Value* other) const final;
- Value* bitOrConstant(Procedure&, const Value* other) const final;
- Value* bitXorConstant(Procedure&, const Value* other) const final;
- Value* bitwiseCastConstant(Procedure&) const final;
- Value* doubleToFloatConstant(Procedure&) const final;
- Value* absConstant(Procedure&) const final;
- Value* ceilConstant(Procedure&) const final;
- Value* floorConstant(Procedure&) const final;
- Value* sqrtConstant(Procedure&) const final;
+ Value* negConstant(Procedure&) const override;
+ Value* addConstant(Procedure&, int32_t other) const override;
+ Value* addConstant(Procedure&, const Value* other) const override;
+ Value* subConstant(Procedure&, const Value* other) const override;
+ Value* divConstant(Procedure&, const Value* other) const override;
+ Value* modConstant(Procedure&, const Value* other) const override;
+ Value* mulConstant(Procedure&, const Value* other) const override;
+ Value* bitAndConstant(Procedure&, const Value* other) const override;
+ Value* bitOrConstant(Procedure&, const Value* other) const override;
+ Value* bitXorConstant(Procedure&, const Value* other) const override;
+ Value* bitwiseCastConstant(Procedure&) const override;
+ Value* doubleToFloatConstant(Procedure&) const override;
+ Value* absConstant(Procedure&) const override;
+ Value* ceilConstant(Procedure&) const override;
+ Value* floorConstant(Procedure&) const override;
+ Value* sqrtConstant(Procedure&) const override;
- TriState equalConstant(const Value* other) const final;
- TriState notEqualConstant(const Value* other) const final;
- TriState lessThanConstant(const Value* other) const final;
- TriState greaterThanConstant(const Value* other) const final;
- TriState lessEqualConstant(const Value* other) const final;
- TriState greaterEqualConstant(const Value* other) const final;
- TriState equalOrUnorderedConstant(const Value* other) const final;
+ TriState equalConstant(const Value* other) const override;
+ TriState notEqualConstant(const Value* other) const override;
+ TriState lessThanConstant(const Value* other) const override;
+ TriState greaterThanConstant(const Value* other) const override;
+ TriState lessEqualConstant(const Value* other) const override;
+ TriState greaterEqualConstant(const Value* other) const override;
+ TriState equalOrUnorderedConstant(const Value* other) const override;
B3_SPECIALIZE_VALUE_FOR_NO_CHILDREN
@@ -70,7 +70,7 @@
friend class Procedure;
friend class Value;
- void dumpMeta(CommaPrinter&, PrintStream&) const final;
+ void dumpMeta(CommaPrinter&, PrintStream&) const override;
static Opcode opcodeFromConstructor(Origin, double) { return ConstDouble; }
Modified: trunk/Source/_javascript_Core/b3/B3ConstFloatValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3ConstFloatValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3ConstFloatValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -31,37 +31,37 @@
namespace JSC { namespace B3 {
-class JS_EXPORT_PRIVATE ConstFloatValue final : public Value {
+class JS_EXPORT_PRIVATE ConstFloatValue : public Value {
public:
static bool accepts(Kind kind) { return kind == ConstFloat; }
- ~ConstFloatValue() final;
+ ~ConstFloatValue();
float value() const { return m_value; }
- Value* negConstant(Procedure&) const final;
- Value* addConstant(Procedure&, int32_t other) const final;
- Value* addConstant(Procedure&, const Value* other) const final;
- Value* subConstant(Procedure&, const Value* other) const final;
- Value* divConstant(Procedure&, const Value* other) const final;
- Value* mulConstant(Procedure&, const Value* other) const final;
- Value* bitAndConstant(Procedure&, const Value* other) const final;
- Value* bitOrConstant(Procedure&, const Value* other) const final;
- Value* bitXorConstant(Procedure&, const Value* other) const final;
- Value* bitwiseCastConstant(Procedure&) const final;
- Value* floatToDoubleConstant(Procedure&) const final;
- Value* absConstant(Procedure&) const final;
- Value* ceilConstant(Procedure&) const final;
- Value* floorConstant(Procedure&) const final;
- Value* sqrtConstant(Procedure&) const final;
+ Value* negConstant(Procedure&) const override;
+ Value* addConstant(Procedure&, int32_t other) const override;
+ Value* addConstant(Procedure&, const Value* other) const override;
+ Value* subConstant(Procedure&, const Value* other) const override;
+ Value* divConstant(Procedure&, const Value* other) const override;
+ Value* mulConstant(Procedure&, const Value* other) const override;
+ Value* bitAndConstant(Procedure&, const Value* other) const override;
+ Value* bitOrConstant(Procedure&, const Value* other) const override;
+ Value* bitXorConstant(Procedure&, const Value* other) const override;
+ Value* bitwiseCastConstant(Procedure&) const override;
+ Value* floatToDoubleConstant(Procedure&) const override;
+ Value* absConstant(Procedure&) const override;
+ Value* ceilConstant(Procedure&) const override;
+ Value* floorConstant(Procedure&) const override;
+ Value* sqrtConstant(Procedure&) const override;
- TriState equalConstant(const Value* other) const final;
- TriState notEqualConstant(const Value* other) const final;
- TriState lessThanConstant(const Value* other) const final;
- TriState greaterThanConstant(const Value* other) const final;
- TriState lessEqualConstant(const Value* other) const final;
- TriState greaterEqualConstant(const Value* other) const final;
- TriState equalOrUnorderedConstant(const Value* other) const final;
+ TriState equalConstant(const Value* other) const override;
+ TriState notEqualConstant(const Value* other) const override;
+ TriState lessThanConstant(const Value* other) const override;
+ TriState greaterThanConstant(const Value* other) const override;
+ TriState lessEqualConstant(const Value* other) const override;
+ TriState greaterEqualConstant(const Value* other) const override;
+ TriState equalOrUnorderedConstant(const Value* other) const override;
B3_SPECIALIZE_VALUE_FOR_NO_CHILDREN
@@ -69,7 +69,7 @@
friend class Procedure;
friend class Value;
- void dumpMeta(CommaPrinter&, PrintStream&) const final;
+ void dumpMeta(CommaPrinter&, PrintStream&) const override;
static Opcode opcodeFromConstructor(Origin, float) { return ConstFloat; }
Modified: trunk/Source/_javascript_Core/b3/B3DataSection.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3DataSection.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3DataSection.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -31,15 +31,15 @@
namespace JSC { namespace B3 {
-class DataSection final : public OpaqueByproduct {
+class DataSection : public OpaqueByproduct {
public:
DataSection(size_t size);
- ~DataSection() final;
+ virtual ~DataSection();
void* data() const { return m_data; }
size_t size() const { return m_size; }
- void dump(PrintStream&) const final;
+ void dump(PrintStream&) const override;
private:
void* m_data;
Modified: trunk/Source/_javascript_Core/b3/B3ExtractValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3ExtractValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3ExtractValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -35,7 +35,7 @@
public:
static bool accepts(Kind kind) { return kind == Extract; }
- ~ExtractValue() final;
+ ~ExtractValue();
int32_t index() const { return m_index; }
@@ -43,7 +43,7 @@
B3_SPECIALIZE_VALUE_FOR_FINAL_SIZE_FIXED_CHILDREN
private:
- void dumpMeta(CommaPrinter&, PrintStream&) const final;
+ void dumpMeta(CommaPrinter&, PrintStream&) const override;
static Opcode opcodeFromConstructor(Origin, Type, Value*, int32_t) { return Extract; }
Modified: trunk/Source/_javascript_Core/b3/B3FenceValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3FenceValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3FenceValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -32,11 +32,11 @@
namespace JSC { namespace B3 {
-class JS_EXPORT_PRIVATE FenceValue final : public Value {
+class JS_EXPORT_PRIVATE FenceValue : public Value {
public:
static bool accepts(Kind kind) { return kind == Fence; }
- ~FenceValue() final;
+ ~FenceValue();
// The read/write heaps are reflected in the effects() of this value. The compiler may change
// the lowering of a Fence based on the heaps. For example, if a fence does not write anything
Modified: trunk/Source/_javascript_Core/b3/B3MemoryValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3MemoryValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3MemoryValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -41,7 +41,7 @@
return isMemoryAccess(kind.opcode());
}
- ~MemoryValue() override;
+ ~MemoryValue();
OffsetType offset() const { return m_offset; }
template<typename Int, typename = IsLegalOffset<Int>>
Modified: trunk/Source/_javascript_Core/b3/B3PatchpointSpecial.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3PatchpointSpecial.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3PatchpointSpecial.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -41,12 +41,12 @@
//
// Patch &patchpoint, result, args...
-class PatchpointSpecial final : public StackmapSpecial {
+class PatchpointSpecial : public StackmapSpecial {
public:
JS_EXPORT_PRIVATE PatchpointSpecial();
- ~PatchpointSpecial() final;
+ virtual ~PatchpointSpecial();
-private:
+protected:
void forEachArg(Air::Inst&, const ScopedLambda<Air::Inst::EachArgCallback>&) final;
bool isValid(Air::Inst&) final;
bool admitsStack(Air::Inst&, unsigned argIndex) final;
Modified: trunk/Source/_javascript_Core/b3/B3PatchpointValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3PatchpointValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3PatchpointValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -33,13 +33,13 @@
namespace JSC { namespace B3 {
-class PatchpointValue final : public StackmapValue {
+class PatchpointValue : public StackmapValue {
public:
typedef StackmapValue Base;
static bool accepts(Kind kind) { return kind == Patchpoint; }
- ~PatchpointValue() final;
+ ~PatchpointValue();
// The effects of the patchpoint. This defaults to Effects::forCall(), but you can set it to anything.
//
@@ -64,9 +64,10 @@
B3_SPECIALIZE_VALUE_FOR_FINAL_SIZE_VARARGS_CHILDREN
+protected:
+ void dumpMeta(CommaPrinter&, PrintStream&) const override;
+
private:
- void dumpMeta(CommaPrinter&, PrintStream&) const final;
-
friend class Procedure;
friend class Value;
Modified: trunk/Source/_javascript_Core/b3/B3SlotBaseValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3SlotBaseValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3SlotBaseValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -33,11 +33,11 @@
class StackSlot;
-class JS_EXPORT_PRIVATE SlotBaseValue final : public Value {
+class JS_EXPORT_PRIVATE SlotBaseValue : public Value {
public:
static bool accepts(Kind kind) { return kind == SlotBase; }
- ~SlotBaseValue() final;
+ ~SlotBaseValue();
StackSlot* slot() const { return m_slot; }
@@ -47,7 +47,7 @@
friend class Procedure;
friend class Value;
- void dumpMeta(CommaPrinter&, PrintStream&) const final;
+ void dumpMeta(CommaPrinter&, PrintStream&) const override;
static Opcode opcodeFromConstructor(Origin, StackSlot*) { return SlotBase; }
SlotBaseValue(Origin origin, StackSlot* slot)
Modified: trunk/Source/_javascript_Core/b3/B3StackmapSpecial.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3StackmapSpecial.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3StackmapSpecial.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -42,7 +42,7 @@
class StackmapSpecial : public Air::Special {
public:
StackmapSpecial();
- ~StackmapSpecial() override;
+ virtual ~StackmapSpecial();
enum RoleMode : int8_t {
SameAsRep,
Modified: trunk/Source/_javascript_Core/b3/B3StackmapValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3StackmapValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3StackmapValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -61,7 +61,7 @@
}
}
- ~StackmapValue() override;
+ ~StackmapValue();
// Use this to add children.
void append(const ConstrainedValue& value)
Modified: trunk/Source/_javascript_Core/b3/B3SwitchValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3SwitchValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3SwitchValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -33,11 +33,11 @@
namespace JSC { namespace B3 {
-class SwitchValue final : public Value {
+class SwitchValue : public Value {
public:
static bool accepts(Kind kind) { return kind == Switch; }
- ~SwitchValue() final;
+ ~SwitchValue();
// numCaseValues() + 1 == numSuccessors().
unsigned numCaseValues() const { return m_values.size(); }
@@ -62,14 +62,15 @@
JS_EXPORT_PRIVATE void setFallThrough(const FrequentedBlock&);
JS_EXPORT_PRIVATE void appendCase(const SwitchCase&);
- void dumpSuccessors(const BasicBlock*, PrintStream&) const final;
+ void dumpSuccessors(const BasicBlock*, PrintStream&) const override;
B3_SPECIALIZE_VALUE_FOR_FIXED_CHILDREN(1)
B3_SPECIALIZE_VALUE_FOR_FINAL_SIZE_FIXED_CHILDREN
+protected:
+ void dumpMeta(CommaPrinter&, PrintStream&) const override;
+
private:
- void dumpMeta(CommaPrinter&, PrintStream&) const final;
-
friend class Procedure;
friend class Value;
Modified: trunk/Source/_javascript_Core/b3/B3UpsilonValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3UpsilonValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3UpsilonValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -31,11 +31,11 @@
namespace JSC { namespace B3 {
-class JS_EXPORT_PRIVATE UpsilonValue final : public Value {
+class JS_EXPORT_PRIVATE UpsilonValue : public Value {
public:
static bool accepts(Kind kind) { return kind == Upsilon; }
- ~UpsilonValue() final;
+ ~UpsilonValue();
Value* phi() const { return m_phi; }
void setPhi(Value* phi)
@@ -48,9 +48,10 @@
B3_SPECIALIZE_VALUE_FOR_FIXED_CHILDREN(1)
B3_SPECIALIZE_VALUE_FOR_FINAL_SIZE_FIXED_CHILDREN
+protected:
+ void dumpMeta(CommaPrinter&, PrintStream&) const override;
+
private:
- void dumpMeta(CommaPrinter&, PrintStream&) const final;
-
friend class Procedure;
friend class Value;
Modified: trunk/Source/_javascript_Core/b3/B3VariableValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3VariableValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3VariableValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -33,11 +33,11 @@
class Variable;
-class JS_EXPORT_PRIVATE VariableValue final : public Value {
+class JS_EXPORT_PRIVATE VariableValue : public Value {
public:
static bool accepts(Kind kind) { return kind == Get || kind == Set; }
- ~VariableValue() final;
+ ~VariableValue();
Variable* variable() const { return m_variable; }
@@ -44,9 +44,10 @@
B3_SPECIALIZE_VALUE_FOR_NON_VARARGS_CHILDREN
B3_SPECIALIZE_VALUE_FOR_FINAL_SIZE_FIXED_CHILDREN
+protected:
+ void dumpMeta(CommaPrinter&, PrintStream&) const override;
+
private:
- void dumpMeta(CommaPrinter&, PrintStream&) const final;
-
friend class Procedure;
friend class Value;
Modified: trunk/Source/_javascript_Core/b3/B3WasmAddressValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3WasmAddressValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3WasmAddressValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -32,11 +32,11 @@
namespace JSC { namespace B3 {
-class JS_EXPORT_PRIVATE WasmAddressValue final : public Value {
+class JS_EXPORT_PRIVATE WasmAddressValue : public Value {
public:
static bool accepts(Kind kind) { return kind == WasmAddress; }
- ~WasmAddressValue() final;
+ ~WasmAddressValue();
GPRReg pinnedGPR() const { return m_pinnedGPR; }
@@ -43,9 +43,10 @@
B3_SPECIALIZE_VALUE_FOR_FIXED_CHILDREN(1)
B3_SPECIALIZE_VALUE_FOR_FINAL_SIZE_FIXED_CHILDREN
+protected:
+ void dumpMeta(CommaPrinter&, PrintStream&) const override;
+
private:
- void dumpMeta(CommaPrinter&, PrintStream&) const final;
-
friend class Procedure;
friend class Value;
Modified: trunk/Source/_javascript_Core/b3/B3WasmBoundsCheckValue.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/B3WasmBoundsCheckValue.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/B3WasmBoundsCheckValue.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -32,11 +32,11 @@
namespace JSC { namespace B3 {
-class WasmBoundsCheckValue final : public Value {
+class WasmBoundsCheckValue : public Value {
public:
static bool accepts(Kind kind) { return kind == WasmBoundsCheck; }
- ~WasmBoundsCheckValue() final;
+ ~WasmBoundsCheckValue();
enum class Type {
Pinned,
@@ -55,9 +55,10 @@
B3_SPECIALIZE_VALUE_FOR_FIXED_CHILDREN(1)
B3_SPECIALIZE_VALUE_FOR_FINAL_SIZE_FIXED_CHILDREN
+protected:
+ void dumpMeta(CommaPrinter&, PrintStream&) const override;
+
private:
- void dumpMeta(CommaPrinter&, PrintStream&) const final;
-
friend class Procedure;
friend class Value;
Modified: trunk/Source/_javascript_Core/b3/air/AirCCallSpecial.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/air/AirCCallSpecial.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/air/AirCCallSpecial.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -42,10 +42,10 @@
// if we had a call that didn't pass them, then they'd appear to be live until some clobber point or
// the prologue, whichever happened sooner.
-class CCallSpecial final : public Special {
+class CCallSpecial : public Special {
public:
CCallSpecial();
- ~CCallSpecial() final;
+ ~CCallSpecial();
// You cannot use this register to pass arguments. It just so happens that this register is not
// used for arguments in the C calling convention. By the way, this is the only thing that causes
@@ -52,7 +52,7 @@
// this special to be specific to C calls.
static constexpr GPRReg scratchRegister = GPRInfo::nonPreservedNonArgumentGPR0;
-private:
+protected:
void forEachArg(Inst&, const ScopedLambda<Inst::EachArgCallback>&) final;
bool isValid(Inst&) final;
bool admitsStack(Inst&, unsigned argIndex) final;
@@ -65,6 +65,7 @@
void dumpImpl(PrintStream&) const final;
void deepDumpImpl(PrintStream&) const final;
+private:
static constexpr unsigned specialArgOffset = 0;
static constexpr unsigned numSpecialArgs = 1;
static constexpr unsigned calleeArgOffset = numSpecialArgs;
Modified: trunk/Source/_javascript_Core/b3/air/AirPrintSpecial.h (261555 => 261556)
--- trunk/Source/_javascript_Core/b3/air/AirPrintSpecial.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/b3/air/AirPrintSpecial.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -92,10 +92,10 @@
namespace B3 { namespace Air {
-class PrintSpecial final : public Special {
+class PrintSpecial : public Special {
public:
PrintSpecial(Printer::PrintRecordList*);
- ~PrintSpecial() final;
+ ~PrintSpecial();
// You cannot use this register to pass arguments. It just so happens that this register is not
// used for arguments in the C calling convention. By the way, this is the only thing that causes
@@ -102,7 +102,7 @@
// this special to be specific to C calls.
static constexpr GPRReg scratchRegister = GPRInfo::nonArgGPR0;
-private:
+protected:
void forEachArg(Inst&, const ScopedLambda<Inst::EachArgCallback>&) final;
bool isValid(Inst&) final;
bool admitsStack(Inst&, unsigned argIndex) final;
@@ -115,6 +115,7 @@
void dumpImpl(PrintStream&) const final;
void deepDumpImpl(PrintStream&) const final;
+private:
static constexpr unsigned specialArgOffset = 0;
static constexpr unsigned numSpecialArgs = 1;
static constexpr unsigned calleeArgOffset = numSpecialArgs;
Modified: trunk/Source/_javascript_Core/bytecode/BytecodeDumper.h (261555 => 261556)
--- trunk/Source/_javascript_Core/bytecode/BytecodeDumper.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/bytecode/BytecodeDumper.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -84,7 +84,7 @@
{
}
- ~BytecodeDumper() override { }
+ virtual ~BytecodeDumper() { }
protected:
Block* block() const { return m_block; }
@@ -101,7 +101,7 @@
};
template<class Block>
-class CodeBlockBytecodeDumper final : public BytecodeDumper<Block> {
+class CodeBlockBytecodeDumper : public BytecodeDumper<Block> {
public:
static void dumpBlock(Block*, const InstructionStream&, PrintStream& out, const ICStatusMap& = ICStatusMap());
@@ -127,7 +127,7 @@
struct ModuleInformation;
enum Type : int8_t;
-class BytecodeDumper final : public JSC::BytecodeDumper<FunctionCodeBlock> {
+class BytecodeDumper : public JSC::BytecodeDumper<FunctionCodeBlock> {
public:
static void dumpBlock(FunctionCodeBlock*, const ModuleInformation&, PrintStream& out);
@@ -135,7 +135,7 @@
using JSC::BytecodeDumper<FunctionCodeBlock>::BytecodeDumper;
void dumpConstants();
- CString constantName(VirtualRegister index) const final;
+ CString constantName(VirtualRegister index) const override;
CString formatConstant(Type, uint64_t) const;
};
Modified: trunk/Source/_javascript_Core/bytecode/GetterSetterAccessCase.h (261555 => 261556)
--- trunk/Source/_javascript_Core/bytecode/GetterSetterAccessCase.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/bytecode/GetterSetterAccessCase.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -32,7 +32,7 @@
namespace JSC {
-class GetterSetterAccessCase final : public ProxyableAccessCase {
+class GetterSetterAccessCase : public ProxyableAccessCase {
public:
typedef ProxyableAccessCase Base;
friend class AccessCase;
@@ -48,8 +48,8 @@
JSObject* customSlotBase() const { return m_customSlotBase.get(); }
Optional<DOMAttributeAnnotation> domAttribute() const { return m_domAttribute; }
- bool hasAlternateBase() const final;
- JSObject* alternateBase() const final;
+ bool hasAlternateBase() const override;
+ JSObject* alternateBase() const override;
void emitDOMJITGetter(AccessGenerationState&, const DOMJIT::GetterSetter*, GPRReg baseForGetGPR);
@@ -62,10 +62,10 @@
const ObjectPropertyConditionSet&, std::unique_ptr<PolyProtoAccessChain>,
FunctionPtr<OperationPtrTag> customSetter = nullptr, JSObject* customSlotBase = nullptr);
- void dumpImpl(PrintStream&, CommaPrinter&) const final;
- std::unique_ptr<AccessCase> clone() const final;
+ void dumpImpl(PrintStream&, CommaPrinter&) const override;
+ std::unique_ptr<AccessCase> clone() const override;
- ~GetterSetterAccessCase() final;
+ ~GetterSetterAccessCase();
FunctionPtr<OperationPtrTag> customAccessor() const { return m_customAccessor; }
Modified: trunk/Source/_javascript_Core/bytecode/InstanceOfAccessCase.h (261555 => 261556)
--- trunk/Source/_javascript_Core/bytecode/InstanceOfAccessCase.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/bytecode/InstanceOfAccessCase.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -31,7 +31,7 @@
namespace JSC {
-class InstanceOfAccessCase final : public AccessCase {
+class InstanceOfAccessCase : public AccessCase {
public:
using Base = AccessCase;
@@ -41,16 +41,17 @@
JSObject* prototype() const { return m_prototype.get(); }
- void dumpImpl(PrintStream&, CommaPrinter&) const final;
- std::unique_ptr<AccessCase> clone() const final;
+ void dumpImpl(PrintStream&, CommaPrinter&) const override;
+ std::unique_ptr<AccessCase> clone() const override;
- ~InstanceOfAccessCase() final;
+ ~InstanceOfAccessCase();
-private:
+protected:
InstanceOfAccessCase(
VM&, JSCell*, AccessType, Structure*, const ObjectPropertyConditionSet&,
JSObject* prototype);
+private:
WriteBarrier<JSObject> m_prototype;
};
Modified: trunk/Source/_javascript_Core/bytecode/IntrinsicGetterAccessCase.h (261555 => 261556)
--- trunk/Source/_javascript_Core/bytecode/IntrinsicGetterAccessCase.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/bytecode/IntrinsicGetterAccessCase.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -31,7 +31,7 @@
namespace JSC {
-class IntrinsicGetterAccessCase final : public AccessCase {
+class IntrinsicGetterAccessCase : public AccessCase {
public:
typedef AccessCase Base;
friend class AccessCase;
@@ -44,9 +44,9 @@
static std::unique_ptr<AccessCase> create(VM&, JSCell*, CacheableIdentifier, PropertyOffset, Structure*, const ObjectPropertyConditionSet&, JSFunction* intrinsicFunction, std::unique_ptr<PolyProtoAccessChain>);
- std::unique_ptr<AccessCase> clone() const final;
+ std::unique_ptr<AccessCase> clone() const override;
- ~IntrinsicGetterAccessCase() final;
+ ~IntrinsicGetterAccessCase();
private:
IntrinsicGetterAccessCase(VM&, JSCell*, CacheableIdentifier, PropertyOffset, Structure*, const ObjectPropertyConditionSet&, JSFunction* intrinsicFunction, std::unique_ptr<PolyProtoAccessChain>);
Modified: trunk/Source/_javascript_Core/bytecode/ModuleNamespaceAccessCase.h (261555 => 261556)
--- trunk/Source/_javascript_Core/bytecode/ModuleNamespaceAccessCase.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/bytecode/ModuleNamespaceAccessCase.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -35,7 +35,7 @@
class JSModuleEnvironment;
class JSModuleNamespaceObject;
-class ModuleNamespaceAccessCase final : public AccessCase {
+class ModuleNamespaceAccessCase : public AccessCase {
public:
using Base = AccessCase;
friend class AccessCase;
@@ -46,11 +46,11 @@
static std::unique_ptr<AccessCase> create(VM&, JSCell* owner, CacheableIdentifier, JSModuleNamespaceObject*, JSModuleEnvironment*, ScopeOffset);
- std::unique_ptr<AccessCase> clone() const final;
+ std::unique_ptr<AccessCase> clone() const override;
void emit(AccessGenerationState&, MacroAssembler::JumpList& fallThrough);
- ~ModuleNamespaceAccessCase() final;
+ ~ModuleNamespaceAccessCase();
private:
ModuleNamespaceAccessCase(VM&, JSCell* owner, CacheableIdentifier, JSModuleNamespaceObject*, JSModuleEnvironment*, ScopeOffset);
Modified: trunk/Source/_javascript_Core/bytecode/ProxyableAccessCase.h (261555 => 261556)
--- trunk/Source/_javascript_Core/bytecode/ProxyableAccessCase.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/bytecode/ProxyableAccessCase.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -43,7 +43,7 @@
void dumpImpl(PrintStream&, CommaPrinter&) const override;
std::unique_ptr<AccessCase> clone() const override;
- ~ProxyableAccessCase() override;
+ ~ProxyableAccessCase();
protected:
ProxyableAccessCase(VM&, JSCell*, AccessType, CacheableIdentifier, PropertyOffset, Structure*, const ObjectPropertyConditionSet&, bool viaProxy, WatchpointSet* additionalSet, std::unique_ptr<PolyProtoAccessChain>);
Modified: trunk/Source/_javascript_Core/bytecode/Watchpoint.h (261555 => 261556)
--- trunk/Source/_javascript_Core/bytecode/Watchpoint.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/bytecode/Watchpoint.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -533,7 +533,7 @@
WTF_MAKE_NONCOPYABLE(DeferredWatchpointFire);
public:
JS_EXPORT_PRIVATE DeferredWatchpointFire(VM&);
- JS_EXPORT_PRIVATE ~DeferredWatchpointFire() override;
+ JS_EXPORT_PRIVATE ~DeferredWatchpointFire();
JS_EXPORT_PRIVATE void takeWatchpointsToFire(WatchpointSet*);
JS_EXPORT_PRIVATE void fireAll();
Modified: trunk/Source/_javascript_Core/dfg/DFGFailedFinalizer.h (261555 => 261556)
--- trunk/Source/_javascript_Core/dfg/DFGFailedFinalizer.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/dfg/DFGFailedFinalizer.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -31,14 +31,14 @@
namespace JSC { namespace DFG {
-class FailedFinalizer final : public Finalizer {
+class FailedFinalizer : public Finalizer {
public:
FailedFinalizer(Plan&);
- ~FailedFinalizer() final;
+ virtual ~FailedFinalizer();
- size_t codeSize() final;
- bool finalize() final;
- bool finalizeFunction() final;
+ size_t codeSize() override;
+ bool finalize() override;
+ bool finalizeFunction() override;
};
} } // namespace JSC::DFG
Modified: trunk/Source/_javascript_Core/dfg/DFGGraph.h (261555 => 261556)
--- trunk/Source/_javascript_Core/dfg/DFGGraph.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/dfg/DFGGraph.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -159,10 +159,10 @@
//
// The order may be significant for nodes with side-effects (property accesses, value conversions).
// Nodes that are 'dead' remain in the vector with refCount 0.
-class Graph final : public virtual Scannable {
+class Graph : public virtual Scannable {
public:
Graph(VM&, Plan&);
- ~Graph() final;
+ ~Graph();
void changeChild(Edge& edge, Node* newNode)
{
@@ -1001,7 +1001,7 @@
void registerFrozenValues();
- void visitChildren(SlotVisitor&) final;
+ void visitChildren(SlotVisitor&) override;
void logAssertionFailure(
std::nullptr_t, const char* file, int line, const char* function,
Modified: trunk/Source/_javascript_Core/dfg/DFGJITCode.h (261555 => 261556)
--- trunk/Source/_javascript_Core/dfg/DFGJITCode.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/dfg/DFGJITCode.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -46,13 +46,13 @@
class JITCompiler;
-class JITCode final : public DirectJITCode {
+class JITCode : public DirectJITCode {
public:
JITCode();
- ~JITCode() final;
+ virtual ~JITCode();
- CommonData* dfgCommon() final;
- JITCode* dfg() final;
+ CommonData* dfgCommon() override;
+ JITCode* dfg() override;
OSREntryData* appendOSREntryData(BytecodeIndex bytecodeIndex, CodeLocationLabel<OSREntryPtrTag> machineCode)
{
@@ -113,11 +113,11 @@
void setOptimizationThresholdBasedOnCompilationResult(CodeBlock*, CompilationResult);
#endif // ENABLE(FTL_JIT)
- void validateReferences(const TrackedReferences&) final;
+ void validateReferences(const TrackedReferences&) override;
- void shrinkToFit(const ConcurrentJSLocker&) final;
+ void shrinkToFit(const ConcurrentJSLocker&) override;
- RegisterSet liveRegistersToPreserveAtExceptionHandlingCallSite(CodeBlock*, CallSiteIndex) final;
+ RegisterSet liveRegistersToPreserveAtExceptionHandlingCallSite(CodeBlock*, CallSiteIndex) override;
#if ENABLE(FTL_JIT)
CodeBlock* osrEntryBlock() { return m_osrEntryBlock.get(); }
void setOSREntryBlock(VM&, const JSCell* owner, CodeBlock* osrEntryBlock);
@@ -126,7 +126,7 @@
static ptrdiff_t commonDataOffset() { return OBJECT_OFFSETOF(JITCode, common); }
- Optional<CodeOrigin> findPC(CodeBlock*, void* pc) final;
+ Optional<CodeOrigin> findPC(CodeBlock*, void* pc) override;
using DirectJITCode::initializeCodeRefForDFG;
Modified: trunk/Source/_javascript_Core/dfg/DFGJITFinalizer.h (261555 => 261556)
--- trunk/Source/_javascript_Core/dfg/DFGJITFinalizer.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/dfg/DFGJITFinalizer.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -33,14 +33,14 @@
namespace JSC { namespace DFG {
-class JITFinalizer final : public Finalizer {
+class JITFinalizer : public Finalizer {
public:
JITFinalizer(Plan&, Ref<JITCode>&&, std::unique_ptr<LinkBuffer>, MacroAssemblerCodePtr<JSEntryPtrTag> withArityCheck = MacroAssemblerCodePtr<JSEntryPtrTag>(MacroAssemblerCodePtr<JSEntryPtrTag>::EmptyValue));
- ~JITFinalizer() final;
+ virtual ~JITFinalizer();
- size_t codeSize() final;
- bool finalize() final;
- bool finalizeFunction() final;
+ size_t codeSize() override;
+ bool finalize() override;
+ bool finalizeFunction() override;
private:
void finalizeCommon();
Modified: trunk/Source/_javascript_Core/dfg/DFGToFTLDeferredCompilationCallback.h (261555 => 261556)
--- trunk/Source/_javascript_Core/dfg/DFGToFTLDeferredCompilationCallback.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/dfg/DFGToFTLDeferredCompilationCallback.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -36,17 +36,17 @@
namespace DFG {
-class ToFTLDeferredCompilationCallback final : public DeferredCompilationCallback {
+class ToFTLDeferredCompilationCallback : public DeferredCompilationCallback {
+protected:
+ ToFTLDeferredCompilationCallback();
+
public:
- ~ToFTLDeferredCompilationCallback() final;
+ virtual ~ToFTLDeferredCompilationCallback();
static Ref<ToFTLDeferredCompilationCallback> create();
- void compilationDidBecomeReadyAsynchronously(CodeBlock*, CodeBlock* profiledDFGCodeBlock) final;
- void compilationDidComplete(CodeBlock*, CodeBlock* profiledDFGCodeBlock, CompilationResult) final;
-
-private:
- ToFTLDeferredCompilationCallback();
+ virtual void compilationDidBecomeReadyAsynchronously(CodeBlock*, CodeBlock* profiledDFGCodeBlock);
+ virtual void compilationDidComplete(CodeBlock*, CodeBlock* profiledDFGCodeBlock, CompilationResult);
};
} } // namespace JSC::DFG
Modified: trunk/Source/_javascript_Core/dfg/DFGToFTLForOSREntryDeferredCompilationCallback.h (261555 => 261556)
--- trunk/Source/_javascript_Core/dfg/DFGToFTLForOSREntryDeferredCompilationCallback.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/dfg/DFGToFTLForOSREntryDeferredCompilationCallback.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -37,18 +37,19 @@
namespace DFG {
-class ToFTLForOSREntryDeferredCompilationCallback final : public DeferredCompilationCallback {
+class ToFTLForOSREntryDeferredCompilationCallback : public DeferredCompilationCallback {
+protected:
+ ToFTLForOSREntryDeferredCompilationCallback(JITCode::TriggerReason* forcedOSREntryTrigger);
+
public:
- ~ToFTLForOSREntryDeferredCompilationCallback() final;
+ virtual ~ToFTLForOSREntryDeferredCompilationCallback();
static Ref<ToFTLForOSREntryDeferredCompilationCallback> create(JITCode::TriggerReason* forcedOSREntryTrigger);
+
+ virtual void compilationDidBecomeReadyAsynchronously(CodeBlock*, CodeBlock* profiledDFGCodeBlock);
+ virtual void compilationDidComplete(CodeBlock*, CodeBlock* profiledDFGCodeBlock, CompilationResult);
- void compilationDidBecomeReadyAsynchronously(CodeBlock*, CodeBlock* profiledDFGCodeBlock) final;
- void compilationDidComplete(CodeBlock*, CodeBlock* profiledDFGCodeBlock, CompilationResult) final;
-
private:
- ToFTLForOSREntryDeferredCompilationCallback(JITCode::TriggerReason* forcedOSREntryTrigger);
-
JITCode::TriggerReason* m_forcedOSREntryTrigger;
};
Modified: trunk/Source/_javascript_Core/ftl/FTLForOSREntryJITCode.h (261555 => 261556)
--- trunk/Source/_javascript_Core/ftl/FTLForOSREntryJITCode.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/ftl/FTLForOSREntryJITCode.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -40,10 +40,10 @@
//
// - Each OSR entry compilation allows entry through only one bytecode index.
-class ForOSREntryJITCode final : public FTL::JITCode {
+class ForOSREntryJITCode : public FTL::JITCode {
public:
ForOSREntryJITCode();
- ~ForOSREntryJITCode() final;
+ ~ForOSREntryJITCode();
void initializeEntryBuffer(VM&, unsigned numCalleeLocals);
ScratchBuffer* entryBuffer() const { return m_entryBuffer; }
@@ -54,7 +54,7 @@
void countEntryFailure() { m_entryFailureCount++; }
unsigned entryFailureCount() const { return m_entryFailureCount; }
- ForOSREntryJITCode* ftlForOSREntry() final;
+ ForOSREntryJITCode* ftlForOSREntry();
private:
ScratchBuffer* m_entryBuffer; // Only for OSR entry code blocks.
Modified: trunk/Source/_javascript_Core/ftl/FTLJITCode.h (261555 => 261556)
--- trunk/Source/_javascript_Core/ftl/FTLJITCode.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/ftl/FTLJITCode.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -42,7 +42,7 @@
class JITCode : public JSC::JITCode {
public:
JITCode();
- ~JITCode() override;
+ ~JITCode();
CodePtr<JSEntryPtrTag> addressForCall(ArityCheckMode) override;
void* executableAddressAtOffset(size_t offset) override;
Modified: trunk/Source/_javascript_Core/ftl/FTLJITFinalizer.h (261555 => 261556)
--- trunk/Source/_javascript_Core/ftl/FTLJITFinalizer.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/ftl/FTLJITFinalizer.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -47,14 +47,14 @@
const char* m_codeDescription;
};
-class JITFinalizer final : public DFG::Finalizer {
+class JITFinalizer : public DFG::Finalizer {
public:
JITFinalizer(DFG::Plan&);
- ~JITFinalizer() final;
+ virtual ~JITFinalizer();
- size_t codeSize() final;
- bool finalize() final;
- bool finalizeFunction() final;
+ size_t codeSize() override;
+ bool finalize() override;
+ bool finalizeFunction() override;
bool finalizeCommon();
Modified: trunk/Source/_javascript_Core/heap/CompleteSubspace.h (261555 => 261556)
--- trunk/Source/_javascript_Core/heap/CompleteSubspace.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/heap/CompleteSubspace.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -29,10 +29,10 @@
namespace JSC {
-class CompleteSubspace final : public Subspace {
+class CompleteSubspace : public Subspace {
public:
JS_EXPORT_PRIVATE CompleteSubspace(CString name, Heap&, HeapCellType*, AlignedMemoryAllocator*);
- JS_EXPORT_PRIVATE ~CompleteSubspace() final;
+ JS_EXPORT_PRIVATE ~CompleteSubspace();
// In some code paths, we need it to be a compile error to call the virtual version of one of
// these functions. That's why we do final methods the old school way.
@@ -39,10 +39,10 @@
// FIXME: Currently subspaces speak of BlockDirectories as "allocators", but that's temporary.
// https://bugs.webkit.org/show_bug.cgi?id=181559
- Allocator allocatorFor(size_t, AllocatorForMode) final;
+ Allocator allocatorFor(size_t, AllocatorForMode) override;
Allocator allocatorForNonVirtual(size_t, AllocatorForMode);
- void* allocate(VM&, size_t, GCDeferralContext*, AllocationFailureMode) final;
+ void* allocate(VM&, size_t, GCDeferralContext*, AllocationFailureMode) override;
void* allocateNonVirtual(VM&, size_t, GCDeferralContext*, AllocationFailureMode);
void* reallocatePreciseAllocationNonVirtual(VM&, HeapCell*, size_t, GCDeferralContext*, AllocationFailureMode);
Modified: trunk/Source/_javascript_Core/heap/FastMallocAlignedMemoryAllocator.h (261555 => 261556)
--- trunk/Source/_javascript_Core/heap/FastMallocAlignedMemoryAllocator.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/heap/FastMallocAlignedMemoryAllocator.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -33,19 +33,19 @@
namespace JSC {
-class FastMallocAlignedMemoryAllocator final : public AlignedMemoryAllocator {
+class FastMallocAlignedMemoryAllocator : public AlignedMemoryAllocator {
public:
FastMallocAlignedMemoryAllocator();
- ~FastMallocAlignedMemoryAllocator() final;
+ ~FastMallocAlignedMemoryAllocator();
- void* tryAllocateAlignedMemory(size_t alignment, size_t size) final;
- void freeAlignedMemory(void*) final;
+ void* tryAllocateAlignedMemory(size_t alignment, size_t size) override;
+ void freeAlignedMemory(void*) override;
- void dump(PrintStream&) const final;
+ void dump(PrintStream&) const override;
- void* tryAllocateMemory(size_t) final;
- void freeMemory(void*) final;
- void* tryReallocateMemory(void*, size_t) final;
+ void* tryAllocateMemory(size_t) override;
+ void freeMemory(void*) override;
+ void* tryReallocateMemory(void*, size_t) override;
#if ENABLE(MALLOC_HEAP_BREAKDOWN)
private:
Modified: trunk/Source/_javascript_Core/heap/GigacageAlignedMemoryAllocator.h (261555 => 261556)
--- trunk/Source/_javascript_Core/heap/GigacageAlignedMemoryAllocator.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/heap/GigacageAlignedMemoryAllocator.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -34,19 +34,19 @@
namespace JSC {
-class GigacageAlignedMemoryAllocator final : public AlignedMemoryAllocator {
+class GigacageAlignedMemoryAllocator : public AlignedMemoryAllocator {
public:
GigacageAlignedMemoryAllocator(Gigacage::Kind);
- ~GigacageAlignedMemoryAllocator() final;
+ ~GigacageAlignedMemoryAllocator();
- void* tryAllocateAlignedMemory(size_t alignment, size_t size) final;
- void freeAlignedMemory(void*) final;
+ void* tryAllocateAlignedMemory(size_t alignment, size_t size) override;
+ void freeAlignedMemory(void*) override;
- void dump(PrintStream&) const final;
+ void dump(PrintStream&) const override;
- void* tryAllocateMemory(size_t) final;
- void freeMemory(void*) final;
- void* tryReallocateMemory(void*, size_t) final;
+ void* tryAllocateMemory(size_t) override;
+ void freeMemory(void*) override;
+ void* tryReallocateMemory(void*, size_t) override;
private:
Gigacage::Kind m_kind;
Modified: trunk/Source/_javascript_Core/heap/HeapSnapshotBuilder.h (261555 => 261556)
--- trunk/Source/_javascript_Core/heap/HeapSnapshotBuilder.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/heap/HeapSnapshotBuilder.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -108,7 +108,7 @@
enum SnapshotType { InspectorSnapshot, GCDebuggingSnapshot };
HeapSnapshotBuilder(HeapProfiler&, SnapshotType = SnapshotType::InspectorSnapshot);
- ~HeapSnapshotBuilder() final;
+ ~HeapSnapshotBuilder();
static void resetNextAvailableObjectIdentifier();
@@ -116,17 +116,17 @@
void buildSnapshot();
// A root or marked cell.
- void analyzeNode(JSCell*) final;
+ void analyzeNode(JSCell*);
// A reference from one cell to another.
- void analyzeEdge(JSCell* from, JSCell* to, SlotVisitor::RootMarkReason) final;
- void analyzePropertyNameEdge(JSCell* from, JSCell* to, UniquedStringImpl* propertyName) final;
- void analyzeVariableNameEdge(JSCell* from, JSCell* to, UniquedStringImpl* variableName) final;
- void analyzeIndexEdge(JSCell* from, JSCell* to, uint32_t index) final;
+ void analyzeEdge(JSCell* from, JSCell* to, SlotVisitor::RootMarkReason);
+ void analyzePropertyNameEdge(JSCell* from, JSCell* to, UniquedStringImpl* propertyName);
+ void analyzeVariableNameEdge(JSCell* from, JSCell* to, UniquedStringImpl* variableName);
+ void analyzeIndexEdge(JSCell* from, JSCell* to, uint32_t index);
- void setOpaqueRootReachabilityReasonForCell(JSCell*, const char*) final;
- void setWrappedObjectForCell(JSCell*, void*) final;
- void setLabelForCell(JSCell*, const String&) final;
+ void setOpaqueRootReachabilityReasonForCell(JSCell*, const char*);
+ void setWrappedObjectForCell(JSCell*, void*);
+ void setLabelForCell(JSCell*, const String&);
String json();
String json(Function<bool (const HeapSnapshotNode&)> allowNodeCallback);
Modified: trunk/Source/_javascript_Core/heap/IsoAlignedMemoryAllocator.h (261555 => 261556)
--- trunk/Source/_javascript_Core/heap/IsoAlignedMemoryAllocator.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/heap/IsoAlignedMemoryAllocator.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -34,19 +34,19 @@
namespace JSC {
-class IsoAlignedMemoryAllocator final : public AlignedMemoryAllocator {
+class IsoAlignedMemoryAllocator : public AlignedMemoryAllocator {
public:
IsoAlignedMemoryAllocator(CString);
- ~IsoAlignedMemoryAllocator() final;
+ ~IsoAlignedMemoryAllocator();
- void* tryAllocateAlignedMemory(size_t alignment, size_t size) final;
- void freeAlignedMemory(void*) final;
+ void* tryAllocateAlignedMemory(size_t alignment, size_t size) override;
+ void freeAlignedMemory(void*) override;
- void dump(PrintStream&) const final;
+ void dump(PrintStream&) const override;
- void* tryAllocateMemory(size_t) final;
- void freeMemory(void*) final;
- void* tryReallocateMemory(void*, size_t) final;
+ void* tryAllocateMemory(size_t) override;
+ void freeMemory(void*) override;
+ void* tryReallocateMemory(void*, size_t) override;
private:
#if ENABLE(MALLOC_HEAP_BREAKDOWN)
Modified: trunk/Source/_javascript_Core/heap/IsoSubspace.h (261555 => 261556)
--- trunk/Source/_javascript_Core/heap/IsoSubspace.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/heap/IsoSubspace.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -38,7 +38,7 @@
class IsoSubspace : public Subspace {
public:
JS_EXPORT_PRIVATE IsoSubspace(CString name, Heap&, HeapCellType*, size_t size, uint8_t numberOfLowerTierCells);
- JS_EXPORT_PRIVATE ~IsoSubspace() override;
+ JS_EXPORT_PRIVATE ~IsoSubspace();
size_t cellSize() { return m_directory.cellSize(); }
Modified: trunk/Source/_javascript_Core/heap/IsoSubspacePerVM.cpp (261555 => 261556)
--- trunk/Source/_javascript_Core/heap/IsoSubspacePerVM.cpp 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/heap/IsoSubspacePerVM.cpp 2020-05-12 16:12:21 UTC (rev 261556)
@@ -31,7 +31,7 @@
namespace JSC {
-class IsoSubspacePerVM::AutoremovingIsoSubspace final : public IsoSubspace {
+class IsoSubspacePerVM::AutoremovingIsoSubspace : public IsoSubspace {
public:
AutoremovingIsoSubspace(IsoSubspacePerVM& perVM, CString name, Heap& heap, HeapCellType* heapCellType, size_t size)
: IsoSubspace(name, heap, heapCellType, size, /* numberOfLowerTierCells */ 0)
@@ -39,7 +39,7 @@
{
}
- ~AutoremovingIsoSubspace() final
+ ~AutoremovingIsoSubspace()
{
auto locker = holdLock(m_perVM.m_lock);
m_perVM.m_subspacePerVM.remove(&space().heap().vm());
Modified: trunk/Source/_javascript_Core/heap/IsoSubspacePerVM.h (261555 => 261556)
--- trunk/Source/_javascript_Core/heap/IsoSubspacePerVM.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/heap/IsoSubspacePerVM.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -36,7 +36,7 @@
// sure to be main-thread-only. But if a class typically gets instantiated from multiple threads at
// once, then this is not great, because concurrent allocations will probably contend on this thing's
// lock.
-class IsoSubspacePerVM final {
+class IsoSubspacePerVM {
public:
struct SubspaceParameters {
SubspaceParameters() { }
Modified: trunk/Source/_javascript_Core/heap/MarkStackMergingConstraint.h (261555 => 261556)
--- trunk/Source/_javascript_Core/heap/MarkStackMergingConstraint.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/heap/MarkStackMergingConstraint.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -32,17 +32,18 @@
class Heap;
class SlotVisitor;
-class MarkStackMergingConstraint final : public MarkingConstraint {
+class MarkStackMergingConstraint : public MarkingConstraint {
public:
MarkStackMergingConstraint(Heap&);
- ~MarkStackMergingConstraint() final;
+ ~MarkStackMergingConstraint();
- double quickWorkEstimate(SlotVisitor&) final;
+ double quickWorkEstimate(SlotVisitor&) override;
+protected:
+ void prepareToExecuteImpl(const AbstractLocker& constraintSolvingLocker, SlotVisitor&) override;
+ void executeImpl(SlotVisitor&) override;
+
private:
- void prepareToExecuteImpl(const AbstractLocker& constraintSolvingLocker, SlotVisitor&) final;
- void executeImpl(SlotVisitor&) final;
-
Heap& m_heap;
};
Modified: trunk/Source/_javascript_Core/heap/SimpleMarkingConstraint.h (261555 => 261556)
--- trunk/Source/_javascript_Core/heap/SimpleMarkingConstraint.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/heap/SimpleMarkingConstraint.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -33,7 +33,7 @@
// This allows for an informal way to define constraints. Just pass a lambda to the constructor. The only
// downside is that this makes it hard for constraints to override any functions in MarkingConstraint
// other than executeImpl. In those cases, just subclass MarkingConstraint.
-class SimpleMarkingConstraint final : public MarkingConstraint {
+class SimpleMarkingConstraint : public MarkingConstraint {
public:
JS_EXPORT_PRIVATE SimpleMarkingConstraint(
CString abbreviatedName, CString name,
@@ -51,10 +51,10 @@
{
}
- JS_EXPORT_PRIVATE ~SimpleMarkingConstraint() final;
+ JS_EXPORT_PRIVATE ~SimpleMarkingConstraint();
private:
- void executeImpl(SlotVisitor&) final;
+ void executeImpl(SlotVisitor&) override;
::Function<void(SlotVisitor&)> m_executeFunction;
};
Modified: trunk/Source/_javascript_Core/heap/SpaceTimeMutatorScheduler.h (261555 => 261556)
--- trunk/Source/_javascript_Core/heap/SpaceTimeMutatorScheduler.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/heap/SpaceTimeMutatorScheduler.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -38,25 +38,25 @@
// that the world is paused for to the amount of space that the world allocated since the GC cycle
// began.
-class SpaceTimeMutatorScheduler final : public MutatorScheduler {
+class SpaceTimeMutatorScheduler : public MutatorScheduler {
public:
SpaceTimeMutatorScheduler(Heap&);
- ~SpaceTimeMutatorScheduler() final;
+ ~SpaceTimeMutatorScheduler();
- State state() const final;
+ State state() const override;
- void beginCollection() final;
+ void beginCollection() override;
- void didStop() final;
- void willResume() final;
- void didExecuteConstraints() final;
+ void didStop() override;
+ void willResume() override;
+ void didExecuteConstraints() override;
- MonotonicTime timeToStop() final;
- MonotonicTime timeToResume() final;
+ MonotonicTime timeToStop() override;
+ MonotonicTime timeToResume() override;
- void log() final;
+ void log() override;
- void endCollection() final;
+ void endCollection() override;
private:
class Snapshot;
Modified: trunk/Source/_javascript_Core/heap/StochasticSpaceTimeMutatorScheduler.h (261555 => 261556)
--- trunk/Source/_javascript_Core/heap/StochasticSpaceTimeMutatorScheduler.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/heap/StochasticSpaceTimeMutatorScheduler.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -39,27 +39,27 @@
// that the world is paused for to the amount of space that the world allocated since the GC cycle
// began.
-class StochasticSpaceTimeMutatorScheduler final : public MutatorScheduler {
+class StochasticSpaceTimeMutatorScheduler : public MutatorScheduler {
public:
StochasticSpaceTimeMutatorScheduler(Heap&);
- ~StochasticSpaceTimeMutatorScheduler() final;
+ ~StochasticSpaceTimeMutatorScheduler();
- State state() const final;
+ State state() const override;
- void beginCollection() final;
+ void beginCollection() override;
- void didStop() final;
- void willResume() final;
- void didReachTermination() final;
- void didExecuteConstraints() final;
- void synchronousDrainingDidStall() final;
+ void didStop() override;
+ void willResume() override;
+ void didReachTermination() override;
+ void didExecuteConstraints() override;
+ void synchronousDrainingDidStall() override;
- MonotonicTime timeToStop() final;
- MonotonicTime timeToResume() final;
+ MonotonicTime timeToStop() override;
+ MonotonicTime timeToResume() override;
- void log() final;
+ void log() override;
- void endCollection() final;
+ void endCollection() override;
private:
class Snapshot;
Modified: trunk/Source/_javascript_Core/heap/SynchronousStopTheWorldMutatorScheduler.h (261555 => 261556)
--- trunk/Source/_javascript_Core/heap/SynchronousStopTheWorldMutatorScheduler.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/heap/SynchronousStopTheWorldMutatorScheduler.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -35,19 +35,19 @@
// than X86-64 and ARM64. This scheduler is a drop-in replacement for the concurrent GC's
// SpaceTimeMutatorScheduler. It tells the GC to never resume the world once the GC cycle begins.
-class SynchronousStopTheWorldMutatorScheduler final : public MutatorScheduler {
+class SynchronousStopTheWorldMutatorScheduler : public MutatorScheduler {
public:
SynchronousStopTheWorldMutatorScheduler();
- ~SynchronousStopTheWorldMutatorScheduler() final;
+ ~SynchronousStopTheWorldMutatorScheduler();
- State state() const final;
+ State state() const override;
- void beginCollection() final;
+ void beginCollection() override;
- MonotonicTime timeToStop() final;
- MonotonicTime timeToResume() final;
+ MonotonicTime timeToStop() override;
+ MonotonicTime timeToResume() override;
- void endCollection() final;
+ void endCollection() override;
private:
State m_state { Normal };
Modified: trunk/Source/_javascript_Core/jit/GCAwareJITStubRoutine.h (261555 => 261556)
--- trunk/Source/_javascript_Core/jit/GCAwareJITStubRoutine.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/jit/GCAwareJITStubRoutine.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -51,7 +51,7 @@
class GCAwareJITStubRoutine : public JITStubRoutine {
public:
GCAwareJITStubRoutine(const MacroAssemblerCodeRef<JITStubRoutinePtrTag>&, VM&);
- ~GCAwareJITStubRoutine() override;
+ virtual ~GCAwareJITStubRoutine();
static Ref<JITStubRoutine> create(const MacroAssemblerCodeRef<JITStubRoutinePtrTag>& code, VM& vm)
{
@@ -83,7 +83,7 @@
public:
MarkingGCAwareJITStubRoutine(
const MacroAssemblerCodeRef<JITStubRoutinePtrTag>&, VM&, const JSCell* owner, const Vector<JSCell*>&, Bag<CallLinkInfo>&&);
- ~MarkingGCAwareJITStubRoutine() override;
+ virtual ~MarkingGCAwareJITStubRoutine();
protected:
void markRequiredObjectsInternal(SlotVisitor&) override;
@@ -97,14 +97,14 @@
// The stub has exception handlers in it. So it clears itself from exception
// handling table when it dies. It also frees space in CodeOrigin table
// for new exception handlers to use the same DisposableCallSiteIndex.
-class GCAwareJITStubRoutineWithExceptionHandler final : public MarkingGCAwareJITStubRoutine {
+class GCAwareJITStubRoutineWithExceptionHandler : public MarkingGCAwareJITStubRoutine {
public:
typedef GCAwareJITStubRoutine Base;
GCAwareJITStubRoutineWithExceptionHandler(const MacroAssemblerCodeRef<JITStubRoutinePtrTag>&, VM&, const JSCell* owner, const Vector<JSCell*>&, Bag<CallLinkInfo>&&, CodeBlock*, DisposableCallSiteIndex);
- void aboutToDie() final;
- void observeZeroRefCount() final;
+ void aboutToDie() override;
+ void observeZeroRefCount() override;
private:
CodeBlock* m_codeBlockWithExceptionHandler;
Modified: trunk/Source/_javascript_Core/jit/JITCode.h (261555 => 261556)
--- trunk/Source/_javascript_Core/jit/JITCode.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/jit/JITCode.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -226,7 +226,7 @@
JITCodeWithCodeRef(CodeRef<JSEntryPtrTag>, JITType, JITCode::ShareAttribute);
public:
- ~JITCodeWithCodeRef() override;
+ virtual ~JITCodeWithCodeRef();
void* executableAddressAtOffset(size_t offset) override;
void* dataAddressAtOffset(size_t offset) override;
@@ -245,7 +245,7 @@
DirectJITCode(JITType);
DirectJITCode(CodeRef<JSEntryPtrTag>, CodePtr<JSEntryPtrTag> withArityCheck, JITType, JITCode::ShareAttribute = JITCode::ShareAttribute::NotShared);
DirectJITCode(CodeRef<JSEntryPtrTag>, CodePtr<JSEntryPtrTag> withArityCheck, JITType, Intrinsic, JITCode::ShareAttribute = JITCode::ShareAttribute::NotShared); // For generated thunk.
- ~DirectJITCode() override;
+ virtual ~DirectJITCode();
CodePtr<JSEntryPtrTag> addressForCall(ArityCheckMode) override;
@@ -260,7 +260,7 @@
public:
NativeJITCode(JITType);
NativeJITCode(CodeRef<JSEntryPtrTag>, JITType, Intrinsic, JITCode::ShareAttribute = JITCode::ShareAttribute::NotShared);
- ~NativeJITCode() override;
+ virtual ~NativeJITCode();
CodePtr<JSEntryPtrTag> addressForCall(ArityCheckMode) override;
};
@@ -268,9 +268,9 @@
class NativeDOMJITCode final : public NativeJITCode {
public:
NativeDOMJITCode(CodeRef<JSEntryPtrTag>, JITType, Intrinsic, const DOMJIT::Signature*);
- ~NativeDOMJITCode() final = default;
+ virtual ~NativeDOMJITCode() = default;
- const DOMJIT::Signature* signature() const final { return m_signature; }
+ const DOMJIT::Signature* signature() const override { return m_signature; }
private:
const DOMJIT::Signature* m_signature;
Modified: trunk/Source/_javascript_Core/jit/JITThunks.h (261555 => 261556)
--- trunk/Source/_javascript_Core/jit/JITThunks.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/jit/JITThunks.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -50,7 +50,7 @@
WTF_MAKE_FAST_ALLOCATED;
public:
JITThunks();
- ~JITThunks() final;
+ virtual ~JITThunks();
MacroAssemblerCodePtr<JITThunkPtrTag> ctiNativeCall(VM&);
MacroAssemblerCodePtr<JITThunkPtrTag> ctiNativeConstruct(VM&);
@@ -67,7 +67,7 @@
NativeExecutable* hostFunctionStub(VM&, TaggedNativeFunction, ThunkGenerator, Intrinsic, const String& name);
private:
- void finalize(Handle<Unknown>, void* context) final;
+ void finalize(Handle<Unknown>, void* context) override;
typedef HashMap<ThunkGenerator, MacroAssemblerCodeRef<JITThunkPtrTag>> CTIStubMap;
CTIStubMap m_ctiStubMap;
Modified: trunk/Source/_javascript_Core/jit/JITToDFGDeferredCompilationCallback.h (261555 => 261556)
--- trunk/Source/_javascript_Core/jit/JITToDFGDeferredCompilationCallback.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/jit/JITToDFGDeferredCompilationCallback.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -33,17 +33,17 @@
class ScriptExecutable;
-class JITToDFGDeferredCompilationCallback final : public DeferredCompilationCallback {
+class JITToDFGDeferredCompilationCallback : public DeferredCompilationCallback {
+protected:
+ JITToDFGDeferredCompilationCallback();
+
public:
- ~JITToDFGDeferredCompilationCallback() final;
+ virtual ~JITToDFGDeferredCompilationCallback();
static Ref<JITToDFGDeferredCompilationCallback> create();
- void compilationDidBecomeReadyAsynchronously(CodeBlock*, CodeBlock* profiledDFGCodeBlock) final;
- void compilationDidComplete(CodeBlock*, CodeBlock* profiledDFGCodeBlock, CompilationResult) final;
-
-private:
- JITToDFGDeferredCompilationCallback();
+ void compilationDidBecomeReadyAsynchronously(CodeBlock*, CodeBlock* profiledDFGCodeBlock) override;
+ void compilationDidComplete(CodeBlock*, CodeBlock* profiledDFGCodeBlock, CompilationResult) override;
};
} // namespace JSC
Modified: trunk/Source/_javascript_Core/jit/PolymorphicCallStubRoutine.h (261555 => 261556)
--- trunk/Source/_javascript_Core/jit/PolymorphicCallStubRoutine.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/jit/PolymorphicCallStubRoutine.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -80,7 +80,7 @@
CodeBlock* m_codeBlock;
};
-class PolymorphicCallStubRoutine final : public GCAwareJITStubRoutine {
+class PolymorphicCallStubRoutine : public GCAwareJITStubRoutine {
public:
PolymorphicCallStubRoutine(
const MacroAssemblerCodeRef<JITStubRoutinePtrTag>&, VM&, const JSCell* owner,
@@ -87,7 +87,7 @@
CallFrame* callerFrame, CallLinkInfo&, const Vector<PolymorphicCallCase>&,
UniqueArray<uint32_t>&& fastCounts);
- ~PolymorphicCallStubRoutine() final;
+ virtual ~PolymorphicCallStubRoutine();
CallVariantList variants() const;
bool hasEdges() const;
@@ -102,11 +102,12 @@
functor(variant.get());
}
- bool visitWeak(VM&) final;
+ bool visitWeak(VM&) override;
+protected:
+ void markRequiredObjectsInternal(SlotVisitor&) override;
+
private:
- void markRequiredObjectsInternal(SlotVisitor&) final;
-
Vector<WriteBarrier<JSCell>, 2> m_variants;
UniqueArray<uint32_t> m_fastCounts;
Bag<PolymorphicCallNode> m_callNodes;
Modified: trunk/Source/_javascript_Core/jsc.cpp (261555 => 261556)
--- trunk/Source/_javascript_Core/jsc.cpp 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/jsc.cpp 2020-05-12 16:12:21 UTC (rev 261556)
@@ -972,7 +972,7 @@
return true;
}
-class ShellSourceProvider final : public StringSourceProvider {
+class ShellSourceProvider : public StringSourceProvider {
public:
static Ref<ShellSourceProvider> create(const String& source, const SourceOrigin& sourceOrigin, URL&& url, const TextPosition& startPosition, SourceProviderSourceType sourceType)
{
@@ -979,12 +979,12 @@
return adoptRef(*new ShellSourceProvider(source, sourceOrigin, WTFMove(url), startPosition, sourceType));
}
- ~ShellSourceProvider() final
+ ~ShellSourceProvider()
{
commitCachedBytecode();
}
- RefPtr<CachedBytecode> cachedBytecode() const final
+ RefPtr<CachedBytecode> cachedBytecode() const override
{
if (!m_cachedBytecode)
loadBytecode();
@@ -991,7 +991,7 @@
return m_cachedBytecode.copyRef();
}
- void updateCache(const UnlinkedFunctionExecutable* executable, const SourceCode&, CodeSpecializationKind kind, const UnlinkedFunctionCodeBlock* codeBlock) const final
+ void updateCache(const UnlinkedFunctionExecutable* executable, const SourceCode&, CodeSpecializationKind kind, const UnlinkedFunctionCodeBlock* codeBlock) const override
{
if (!cacheEnabled() || !m_cachedBytecode)
return;
@@ -1001,7 +1001,7 @@
m_cachedBytecode->addFunctionUpdate(executable, kind, *cachedBytecode);
}
- void cacheBytecode(const BytecodeCacheGenerator& generator) const final
+ void cacheBytecode(const BytecodeCacheGenerator& generator) const override
{
if (!cacheEnabled())
return;
@@ -1012,7 +1012,7 @@
m_cachedBytecode->addGlobalUpdate(*update);
}
- void commitCachedBytecode() const final
+ void commitCachedBytecode() const override
{
if (!cacheEnabled() || !m_cachedBytecode || !m_cachedBytecode->hasUpdates())
return;
Modified: trunk/Source/_javascript_Core/parser/Lexer.cpp (261555 => 261556)
--- trunk/Source/_javascript_Core/parser/Lexer.cpp 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/parser/Lexer.cpp 2020-05-12 16:12:21 UTC (rev 261556)
@@ -746,7 +746,7 @@
return typesOfLatin1Characters[static_cast<LChar>(c)] == CharacterIdentifierStart;
}
-static ALWAYS_INLINE UNUSED_FUNCTION bool isSingleCharacterIdentStart(UChar c)
+static ALWAYS_INLINE bool isSingleCharacterIdentStart(UChar c)
{
if (LIKELY(isLatin1(c)))
return isIdentStart(static_cast<LChar>(c));
Modified: trunk/Source/_javascript_Core/runtime/JSDestructibleObjectHeapCellType.h (261555 => 261556)
--- trunk/Source/_javascript_Core/runtime/JSDestructibleObjectHeapCellType.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/runtime/JSDestructibleObjectHeapCellType.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -29,13 +29,13 @@
namespace JSC {
-class JSDestructibleObjectHeapCellType final : public HeapCellType {
+class JSDestructibleObjectHeapCellType : public HeapCellType {
public:
JS_EXPORT_PRIVATE JSDestructibleObjectHeapCellType();
- JS_EXPORT_PRIVATE ~JSDestructibleObjectHeapCellType() final;
+ JS_EXPORT_PRIVATE virtual ~JSDestructibleObjectHeapCellType();
- void finishSweep(MarkedBlock::Handle&, FreeList*) final;
- void destroy(VM&, JSCell*) final;
+ void finishSweep(MarkedBlock::Handle&, FreeList*) override;
+ void destroy(VM&, JSCell*) override;
};
} // namespace JSC
Modified: trunk/Source/_javascript_Core/runtime/SimpleTypedArrayController.h (261555 => 261556)
--- trunk/Source/_javascript_Core/runtime/SimpleTypedArrayController.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/runtime/SimpleTypedArrayController.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -46,20 +46,20 @@
// already been created and it didn't die, then you get the same
// one.
-class SimpleTypedArrayController final : public TypedArrayController {
+class SimpleTypedArrayController : public TypedArrayController {
public:
SimpleTypedArrayController();
- ~SimpleTypedArrayController() final;
+ virtual ~SimpleTypedArrayController();
- JSArrayBuffer* toJS(JSGlobalObject*, JSGlobalObject*, ArrayBuffer*) final;
- void registerWrapper(JSGlobalObject*, ArrayBuffer*, JSArrayBuffer*) final;
- bool isAtomicsWaitAllowedOnCurrentThread() final;
+ JSArrayBuffer* toJS(JSGlobalObject*, JSGlobalObject*, ArrayBuffer*) override;
+ void registerWrapper(JSGlobalObject*, ArrayBuffer*, JSArrayBuffer*) override;
+ bool isAtomicsWaitAllowedOnCurrentThread() override;
private:
- class JSArrayBufferOwner final : public WeakHandleOwner {
+ class JSArrayBufferOwner : public WeakHandleOwner {
public:
- bool isReachableFromOpaqueRoots(JSC::Handle<JSC::Unknown>, void* context, SlotVisitor&, const char** reason) final;
- void finalize(JSC::Handle<JSC::Unknown>, void* context) final;
+ bool isReachableFromOpaqueRoots(JSC::Handle<JSC::Unknown>, void* context, SlotVisitor&, const char** reason) override;
+ void finalize(JSC::Handle<JSC::Unknown>, void* context) override;
};
JSArrayBufferOwner m_owner;
Modified: trunk/Source/_javascript_Core/runtime/Structure.h (261555 => 261556)
--- trunk/Source/_javascript_Core/runtime/Structure.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/runtime/Structure.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -96,7 +96,7 @@
}
};
-class StructureFireDetail final : public FireDetail {
+class StructureFireDetail : public FireDetail {
public:
StructureFireDetail(const Structure* structure)
: m_structure(structure)
@@ -103,19 +103,19 @@
{
}
- void dump(PrintStream& out) const final;
+ void dump(PrintStream& out) const override;
private:
const Structure* m_structure;
};
-class DeferredStructureTransitionWatchpointFire final : public DeferredWatchpointFire {
+class DeferredStructureTransitionWatchpointFire : public DeferredWatchpointFire {
WTF_MAKE_NONCOPYABLE(DeferredStructureTransitionWatchpointFire);
public:
JS_EXPORT_PRIVATE DeferredStructureTransitionWatchpointFire(VM&, Structure*);
- JS_EXPORT_PRIVATE ~DeferredStructureTransitionWatchpointFire() final;
+ JS_EXPORT_PRIVATE ~DeferredStructureTransitionWatchpointFire();
- void dump(PrintStream& out) const final;
+ void dump(PrintStream& out) const override;
const Structure* structure() const { return m_structure; }
Modified: trunk/Source/_javascript_Core/runtime/WeakGCMap.h (261555 => 261556)
--- trunk/Source/_javascript_Core/runtime/WeakGCMap.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/runtime/WeakGCMap.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -40,7 +40,7 @@
template<typename KeyArg, typename ValueArg, typename HashArg = typename DefaultHash<KeyArg>::Hash,
typename KeyTraitsArg = HashTraits<KeyArg>>
-class WeakGCMap final : public WeakGCMapBase {
+class WeakGCMap : public WeakGCMapBase {
WTF_MAKE_FAST_ALLOCATED;
typedef Weak<ValueArg> ValueType;
typedef HashMap<KeyArg, ValueType, HashArg, KeyTraitsArg> HashMapType;
@@ -52,7 +52,7 @@
typedef typename HashMapType::const_iterator const_iterator;
explicit WeakGCMap(VM&);
- ~WeakGCMap() final;
+ ~WeakGCMap();
ValueArg* get(const KeyType& key) const
{
@@ -91,7 +91,7 @@
inline bool contains(const KeyType& key) const;
- void pruneStaleEntries() final;
+ void pruneStaleEntries() override;
private:
HashMapType m_map;
Modified: trunk/Source/_javascript_Core/wasm/WasmEntryPlan.h (261555 => 261556)
--- trunk/Source/_javascript_Core/wasm/WasmEntryPlan.h 2020-05-12 15:22:11 UTC (rev 261555)
+++ trunk/Source/_javascript_Core/wasm/WasmEntryPlan.h 2020-05-12 16:12:21 UTC (rev 261556)
@@ -50,7 +50,7 @@
EntryPlan(Context*, Ref<ModuleInformation>, AsyncWork, CompletionTask&&);
JS_EXPORT_PRIVATE EntryPlan(Context*, Vector<uint8_t>&&, AsyncWork, CompletionTask&&);
- ~EntryPlan() override = default;
+ virtual ~EntryPlan() = default;
void prepare();