summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/webkit
diff options
context:
space:
mode:
authorJedrzej Nowacki <jedrzej.nowacki@nokia.com>2009-08-10 15:05:19 (GMT)
committerJedrzej Nowacki <jedrzej.nowacki@nokia.com>2009-08-10 15:05:19 (GMT)
commita6c03442be39dca911c2f3391618e3f7dca96595 (patch)
treea245108d312c771e92db6a2ab51cb9147bb705b6 /src/3rdparty/webkit
parent8eaa769af308e3c68b4da786d273cfac2f65a973 (diff)
downloadQt-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/webkit')
-rw-r--r--src/3rdparty/webkit/JavaScriptCore/parser/Nodes.cpp14
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();