#ifndef DFGCallArrayAllocatorSlowPathGenerator_h
#define DFGCallArrayAllocatorSlowPathGenerator_h
-#include <wtf/Platform.h>
-
#if ENABLE(DFG_JIT)
#include "DFGCommon.h"
class CallArrayAllocatorSlowPathGenerator : public JumpingSlowPathGenerator<MacroAssembler::JumpList> {
public:
CallArrayAllocatorSlowPathGenerator(
- MacroAssembler::JumpList from, SpeculativeJIT* jit, P_DFGOperation_EStZ function,
+ MacroAssembler::JumpList from, SpeculativeJIT* jit, P_JITOperation_EStZ function,
GPRReg resultGPR, GPRReg storageGPR, Structure* structure, size_t size)
: JumpingSlowPathGenerator<MacroAssembler::JumpList>(from, jit)
, m_function(function)
}
protected:
- void generateInternal(SpeculativeJIT* jit)
+ virtual void generateInternal(SpeculativeJIT* jit) override
{
linkFrom(jit);
for (unsigned i = 0; i < m_plans.size(); ++i)
}
private:
- P_DFGOperation_EStZ m_function;
+ P_JITOperation_EStZ m_function;
GPRReg m_resultGPR;
GPRReg m_storageGPR;
Structure* m_structure;
class CallArrayAllocatorWithVariableSizeSlowPathGenerator : public JumpingSlowPathGenerator<MacroAssembler::JumpList> {
public:
CallArrayAllocatorWithVariableSizeSlowPathGenerator(
- MacroAssembler::JumpList from, SpeculativeJIT* jit, P_DFGOperation_EStZ function,
+ MacroAssembler::JumpList from, SpeculativeJIT* jit, P_JITOperation_EStZ function,
GPRReg resultGPR, Structure* contiguousStructure, Structure* arrayStorageStructure, GPRReg sizeGPR)
: JumpingSlowPathGenerator<MacroAssembler::JumpList>(from, jit)
, m_function(function)
}
protected:
- void generateInternal(SpeculativeJIT* jit)
+ virtual void generateInternal(SpeculativeJIT* jit) override
{
linkFrom(jit);
for (unsigned i = 0; i < m_plans.size(); ++i)
jit->silentSpill(m_plans[i]);
GPRReg scratchGPR = AssemblyHelpers::selectScratchGPR(m_sizeGPR);
- MacroAssembler::Jump bigLength = jit->m_jit.branch32(MacroAssembler::AboveOrEqual, m_sizeGPR, MacroAssembler::TrustedImm32(MIN_SPARSE_ARRAY_INDEX));
+ MacroAssembler::Jump bigLength = jit->m_jit.branch32(MacroAssembler::AboveOrEqual, m_sizeGPR, MacroAssembler::TrustedImm32(MIN_ARRAY_STORAGE_CONSTRUCTION_LENGTH));
jit->m_jit.move(MacroAssembler::TrustedImmPtr(m_contiguousStructure), scratchGPR);
MacroAssembler::Jump done = jit->m_jit.jump();
bigLength.link(&jit->m_jit);
}
private:
- P_DFGOperation_EStZ m_function;
+ P_JITOperation_EStZ m_function;
GPRReg m_resultGPR;
Structure* m_contiguousStructure;
Structure* m_arrayStorageStructure;