summaryrefslogtreecommitdiff
path: root/src/qml/compiler/qv4isel_masm.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2013-09-09 15:10:03 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-09-12 21:52:09 +0200
commit78e84f42ddf6c5cd925cfd15d8019d7941f39815 (patch)
treeabf62c1f4ad61cb789e9b32e3f9b87d3a3e1e3a6 /src/qml/compiler/qv4isel_masm.cpp
parenta723c7ae756ba567c2f818bb77a83c24373d3438 (diff)
downloadqtdeclarative-78e84f42ddf6c5cd925cfd15d8019d7941f39815.tar.gz
Use QV4::ReturnedValue in the runtime API
This makes function calls from the JIT/Moth into the runtime significantly nicer. Change-Id: Ie7d7123984d65c0bee0525d3d28c643a76b394c4 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/compiler/qv4isel_masm.cpp')
-rw-r--r--src/qml/compiler/qv4isel_masm.cpp24
1 files changed, 12 insertions, 12 deletions
diff --git a/src/qml/compiler/qv4isel_masm.cpp b/src/qml/compiler/qv4isel_masm.cpp
index d40f3c2ff5..fdb2adcb7c 100644
--- a/src/qml/compiler/qv4isel_masm.cpp
+++ b/src/qml/compiler/qv4isel_masm.cpp
@@ -714,13 +714,13 @@ void InstructionSelection::callBuiltinInvalid(V4IR::Name *func, V4IR::ExprList *
if (useFastLookups && func->global) {
uint index = registerGlobalGetterLookup(*func->id);
- generateFunctionCall(Assembler::Void, __qmljs_call_global_lookup,
- Assembler::ContextRegister, Assembler::PointerToValue(result),
+ generateFunctionCall(result, __qmljs_call_global_lookup,
+ Assembler::ContextRegister,
Assembler::TrustedImm32(index),
baseAddressForCallData());
} else {
- generateFunctionCall(Assembler::Void, __qmljs_call_activation_property,
- Assembler::ContextRegister, Assembler::PointerToValue(result),
+ generateFunctionCall(result, __qmljs_call_activation_property,
+ Assembler::ContextRegister,
Assembler::PointerToString(*func->id),
baseAddressForCallData());
}
@@ -997,8 +997,8 @@ void InstructionSelection::callValue(V4IR::Temp *value, V4IR::ExprList *args, V4
Q_ASSERT(value);
int argc = prepareCallData(args, 0);
- generateFunctionCall(Assembler::Void, __qmljs_call_value, Assembler::ContextRegister,
- Assembler::PointerToValue(result), Assembler::Reference(value),
+ generateFunctionCall(result, __qmljs_call_value, Assembler::ContextRegister,
+ Assembler::Reference(value),
baseAddressForCallData());
}
@@ -1504,14 +1504,14 @@ void InstructionSelection::callProperty(V4IR::Expr *base, const QString &name, V
if (useFastLookups) {
uint index = registerGetterLookup(name);
- generateFunctionCall(Assembler::Void, __qmljs_call_property_lookup,
- Assembler::ContextRegister, Assembler::PointerToValue(result),
+ generateFunctionCall(result, __qmljs_call_property_lookup,
+ Assembler::ContextRegister,
Assembler::TrustedImm32(index),
baseAddressForCallData());
} else
{
- generateFunctionCall(Assembler::Void, __qmljs_call_property, Assembler::ContextRegister,
- Assembler::PointerToValue(result), Assembler::PointerToString(name),
+ generateFunctionCall(result, __qmljs_call_property, Assembler::ContextRegister,
+ Assembler::PointerToString(name),
baseAddressForCallData());
}
}
@@ -1522,8 +1522,8 @@ void InstructionSelection::callSubscript(V4IR::Expr *base, V4IR::Expr *index, V4
assert(base != 0);
int argc = prepareCallData(args, base);
- generateFunctionCall(Assembler::Void, __qmljs_call_element, Assembler::ContextRegister,
- Assembler::PointerToValue(result), Assembler::PointerToValue(index),
+ generateFunctionCall(result, __qmljs_call_element, Assembler::ContextRegister,
+ Assembler::PointerToValue(index),
baseAddressForCallData());
}