aboutsummaryrefslogtreecommitdiffstats
path: root/qv4isel_masm.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2012-10-28 16:24:06 +0100
committerSimon Hausmann <simon.hausmann@digia.com>2012-10-31 12:45:49 +0100
commit577cbfa2eed1abe677216f3d57b41a8496ceb18b (patch)
treee240dd785a27bbd039ba5984894176bc43cc26f5 /qv4isel_masm.cpp
parent02c10bef52b29ab5384627c8cf84db95e5182c4d (diff)
Added basic support for 'for (var x in y)' statement
Change-Id: I8f3c8add78bebf92e0073348d1ecbdf3f328af6d Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'qv4isel_masm.cpp')
-rw-r--r--qv4isel_masm.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/qv4isel_masm.cpp b/qv4isel_masm.cpp
index 3662b880fc..54a0b4c77f 100644
--- a/qv4isel_masm.cpp
+++ b/qv4isel_masm.cpp
@@ -223,6 +223,17 @@ void InstructionSelection::callActivationProperty(IR::Call *call, IR::Temp *resu
break;
case IR::Name::builtin_get_exception:
generateFunctionCall(result, __qmljs_get_exception, ContextRegister);
+ case IR::Name::builtin_foreach_iterator_object: {
+ IR::Temp *arg = call->args->expr->asTemp();
+ assert(arg != 0);
+ generateFunctionCall(result, __qmljs_foreach_iterator_object, arg, ContextRegister);
+ }
+ break;
+ case IR::Name::builtin_foreach_next_property_name: {
+ IR::Temp *arg = call->args->expr->asTemp();
+ assert(arg != 0);
+ generateFunctionCall(result, __qmljs_foreach_next_property_name, arg);
+ }
break;
}
}