summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/bytecode/Instruction.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/JavaScriptCore/bytecode/Instruction.h')
-rw-r--r--Source/JavaScriptCore/bytecode/Instruction.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/Source/JavaScriptCore/bytecode/Instruction.h b/Source/JavaScriptCore/bytecode/Instruction.h
index 7e4413065..92118eeb2 100644
--- a/Source/JavaScriptCore/bytecode/Instruction.h
+++ b/Source/JavaScriptCore/bytecode/Instruction.h
@@ -48,6 +48,7 @@ namespace JSC {
class JSCell;
class Structure;
class StructureChain;
+ struct ValueProfile;
#if ENABLE(JIT)
typedef MacroAssemblerCodeRef PolymorphicAccessStructureListStubRoutineType;
@@ -99,6 +100,10 @@ namespace JSC {
}
} list[POLYMORPHIC_LIST_CACHE_SIZE];
+ PolymorphicAccessStructureList()
+ {
+ }
+
PolymorphicAccessStructureList(JSGlobalData& globalData, JSCell* owner, PolymorphicAccessStructureListStubRoutineType stubRoutine, Structure* firstBase, bool isDirect)
{
list[0].set(globalData, owner, stubRoutine, firstBase, isDirect);
@@ -176,6 +181,8 @@ namespace JSC {
}
Instruction(PropertySlot::GetValueFunc getterFunc) { u.getterFunc = getterFunc; }
+
+ Instruction(ValueProfile* profile) { u.profile = profile; }
union {
Opcode opcode;
@@ -184,6 +191,7 @@ namespace JSC {
WriteBarrierBase<StructureChain> structureChain;
WriteBarrierBase<JSCell> jsCell;
PropertySlot::GetValueFunc getterFunc;
+ ValueProfile* profile;
} u;
private: