diff options
author | Jedrzej Nowacki <jedrzej.nowacki@nokia.com> | 2009-08-10 15:05:19 (GMT) |
---|---|---|
committer | Jedrzej Nowacki <jedrzej.nowacki@nokia.com> | 2009-08-10 15:05:19 (GMT) |
commit | a6c03442be39dca911c2f3391618e3f7dca96595 (patch) | |
tree | a245108d312c771e92db6a2ab51cb9147bb705b6 /src/3rdparty | |
parent | 8eaa769af308e3c68b4da786d273cfac2f65a973 (diff) | |
download | Qt-a6c03442be39dca911c2f3391618e3f7dca96595.zip Qt-a6c03442be39dca911c2f3391618e3f7dca96595.tar.gz Qt-a6c03442be39dca911c2f3391618e3f7dca96595.tar.bz2 |
Move some debug hooks
Generation point of debug opcode for different statements were changed
to simulate old - backend QtScript's debugger.
Code is Qt specific and secured by QT_BUILD_SCRIPT_LIB define.
Diffstat (limited to 'src/3rdparty')
-rw-r--r-- | src/3rdparty/webkit/JavaScriptCore/parser/Nodes.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/3rdparty/webkit/JavaScriptCore/parser/Nodes.cpp b/src/3rdparty/webkit/JavaScriptCore/parser/Nodes.cpp index a9ea1fd..9d9fe72 100644 --- a/src/3rdparty/webkit/JavaScriptCore/parser/Nodes.cpp +++ b/src/3rdparty/webkit/JavaScriptCore/parser/Nodes.cpp @@ -1338,7 +1338,9 @@ RegisterID* DoWhileNode::emitBytecode(BytecodeGenerator& generator, RegisterID* RefPtr<RegisterID> result = generator.emitNode(dst, m_statement); generator.emitLabel(scope->continueTarget()); +#ifndef QT_BUILD_SCRIPT_LIB generator.emitDebugHook(WillExecuteStatement, m_expr->lineNo(), m_expr->lineNo(), column()); +#endif RegisterID* cond = generator.emitNode(m_expr); generator.emitJumpIfTrue(cond, topOfLoop.get()); @@ -1351,7 +1353,9 @@ RegisterID* DoWhileNode::emitBytecode(BytecodeGenerator& generator, RegisterID* RegisterID* WhileNode::emitBytecode(BytecodeGenerator& generator, RegisterID* dst) { RefPtr<LabelScope> scope = generator.newLabelScope(LabelScope::Loop); - +#ifdef QT_BUILD_SCRIPT_LIB + generator.emitDebugHook(WillExecuteStatement, m_expr->lineNo(), m_expr->lineNo(), column()); +#endif generator.emitJump(scope->continueTarget()); RefPtr<Label> topOfLoop = generator.newLabel(); @@ -1360,7 +1364,9 @@ RegisterID* WhileNode::emitBytecode(BytecodeGenerator& generator, RegisterID* ds generator.emitNode(dst, m_statement); generator.emitLabel(scope->continueTarget()); +#ifndef QT_BUILD_SCRIPT_LIB generator.emitDebugHook(WillExecuteStatement, m_expr->lineNo(), m_expr->lineNo(), column()); +#endif RegisterID* cond = generator.emitNode(m_expr); generator.emitJumpIfTrue(cond, topOfLoop.get()); @@ -1393,7 +1399,9 @@ RegisterID* ForNode::emitBytecode(BytecodeGenerator& generator, RegisterID* dst) RefPtr<RegisterID> result = generator.emitNode(dst, m_statement); generator.emitLabel(scope->continueTarget()); +#ifndef QT_BUILD_SCRIPT_LIB generator.emitDebugHook(WillExecuteStatement, firstLine(), lastLine(), column()); +#endif if (m_expr3) generator.emitNode(generator.ignoredResult(), m_expr3); @@ -1467,7 +1475,9 @@ RegisterID* ForInNode::emitBytecode(BytecodeGenerator& generator, RegisterID* ds generator.emitLabel(scope->continueTarget()); generator.emitNextPropertyName(propertyName, iter.get(), loopStart.get()); +#ifndef QT_BUILD_SCRIPT_LIB generator.emitDebugHook(WillExecuteStatement, firstLine(), lastLine(), column()); +#endif generator.emitLabel(scope->breakTarget()); return dst; } @@ -1741,7 +1751,9 @@ RegisterID* ThrowNode::emitBytecode(BytecodeGenerator& generator, RegisterID* ds RegisterID* TryNode::emitBytecode(BytecodeGenerator& generator, RegisterID* dst) { +#ifndef QT_BUILD_SCRIPT_LIB generator.emitDebugHook(WillExecuteStatement, firstLine(), lastLine(), column()); +#endif RefPtr<Label> tryStartLabel = generator.newLabel(); RefPtr<Label> tryEndLabel = generator.newLabel(); |