summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/bytecompiler/Label.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/JavaScriptCore/bytecompiler/Label.h')
-rw-r--r--Source/JavaScriptCore/bytecompiler/Label.h15
1 files changed, 4 insertions, 11 deletions
diff --git a/Source/JavaScriptCore/bytecompiler/Label.h b/Source/JavaScriptCore/bytecompiler/Label.h
index 8cab1dbc0..21fa46309 100644
--- a/Source/JavaScriptCore/bytecompiler/Label.h
+++ b/Source/JavaScriptCore/bytecompiler/Label.h
@@ -39,21 +39,14 @@ namespace JSC {
class Label {
public:
- explicit Label(CodeBlock* codeBlock)
+ explicit Label(BytecodeGenerator* generator)
: m_refCount(0)
, m_location(invalidLocation)
- , m_codeBlock(codeBlock)
+ , m_generator(generator)
{
}
- void setLocation(unsigned location)
- {
- m_location = location;
-
- unsigned size = m_unresolvedJumps.size();
- for (unsigned i = 0; i < size; ++i)
- m_codeBlock->instructions()[m_unresolvedJumps[i].second].u.operand = m_location - m_unresolvedJumps[i].first;
- }
+ void setLocation(unsigned);
int bind(int opcode, int offset) const
{
@@ -81,7 +74,7 @@ namespace JSC {
int m_refCount;
unsigned m_location;
- CodeBlock* m_codeBlock;
+ BytecodeGenerator* m_generator;
mutable JumpVector m_unresolvedJumps;
};