aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4function.cpp
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@qt.io>2023-05-12 13:46:17 +0200
committerUlf Hermann <ulf.hermann@qt.io>2023-05-16 13:50:52 +0200
commitb3bc19772daae85fe46d875923d3db8a126809f2 (patch)
treea243afbcecd2906a71726e4114e1d28de518ad26 /src/qml/jsruntime/qv4function.cpp
parentdfb11ea64ec71c6598c790861b3464fe4ae2db0c (diff)
V4: Discern between named builtins and optimizations for common types
The named builtins include void and regexp. The optimizations for other types are useful, but should be a separate enum. Change-Id: I06220cf4a6d3449deca89a26c4f5db0e41d32765 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/qml/jsruntime/qv4function.cpp')
-rw-r--r--src/qml/jsruntime/qv4function.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/qml/jsruntime/qv4function.cpp b/src/qml/jsruntime/qv4function.cpp
index 1017ef9cd9..c2f23279ba 100644
--- a/src/qml/jsruntime/qv4function.cpp
+++ b/src/qml/jsruntime/qv4function.cpp
@@ -117,8 +117,8 @@ Function::Function(ExecutionEngine *engine, ExecutableCompilationUnit *unit,
ic = ic->addMember(engine->identifierTable->asPropertyKey(compilationUnit->runtimeStrings[formalsIndices[i].nameIndex]), Attr_NotConfigurable);
if (enforcesSignature
&& !hasTypes
- && formalsIndices[i].type.typeNameIndexOrBuiltinType()
- != quint32(QV4::CompiledData::BuiltinType::InvalidBuiltin)) {
+ && formalsIndices[i].type.typeNameIndexOrCommonType()
+ != quint32(QV4::CompiledData::CommonType::Invalid)) {
hasTypes = true;
}
}
@@ -130,8 +130,8 @@ Function::Function(ExecutionEngine *engine, ExecutableCompilationUnit *unit,
return;
if (!hasTypes
- && compiledFunction->returnType.typeNameIndexOrBuiltinType()
- == quint32(QV4::CompiledData::BuiltinType::InvalidBuiltin)) {
+ && compiledFunction->returnType.typeNameIndexOrCommonType()
+ == quint32(QV4::CompiledData::CommonType::Invalid)) {
return;
}
@@ -139,14 +139,14 @@ Function::Function(ExecutionEngine *engine, ExecutableCompilationUnit *unit,
QQmlEnginePrivate *enginePrivate = QQmlEnginePrivate::get(engine->qmlEngine());
auto findMetaType = [&](const CompiledData::ParameterType &param) {
- const quint32 type = param.typeNameIndexOrBuiltinType();
- if (param.indexIsBuiltinType()) {
+ const quint32 type = param.typeNameIndexOrCommonType();
+ if (param.indexIsCommonType()) {
if (param.isList()) {
return QQmlPropertyCacheCreatorBase::listTypeForPropertyType(
- QV4::CompiledData::BuiltinType(type));
+ QV4::CompiledData::CommonType(type));
}
return QQmlPropertyCacheCreatorBase::metaTypeForPropertyType(
- QV4::CompiledData::BuiltinType(type));
+ QV4::CompiledData::CommonType(type));
}
if (type == 0)