diff options
| author | Olivier De Cannière <olivier.decanniere@qt.io> | 2026-05-12 11:12:36 +0200 |
|---|---|---|
| committer | Olivier De Cannière <olivier.decanniere@qt.io> | 2026-05-30 02:20:30 +0000 |
| commit | d0fa7140e7f87068fbd655a3020580c5a9ef9936 (patch) | |
| tree | 1dd07b3061d1320f7a02a610e2c5de2b9f65fb80 /tools | |
| parent | 7abca8275e215eb65cb9066785f3fed1cbbdee16 (diff) | |
Compiler: Allow skipping aot validation code generation and add docs
Task-number: QTBUG-142186
Change-Id: Ibb777a688cbfa8f8344c8aefed101285c7e0087f
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/qmlcachegen/qmlcachegen.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/tools/qmlcachegen/qmlcachegen.cpp b/tools/qmlcachegen/qmlcachegen.cpp index 9a9d097cb5..096b8abb73 100644 --- a/tools/qmlcachegen/qmlcachegen.cpp +++ b/tools/qmlcachegen/qmlcachegen.cpp @@ -106,6 +106,9 @@ int main(int argc, char **argv) QCommandLineOption moduleIdOption("module-id"_L1, QCoreApplication::translate("main", "Identifies the module of the qml file being compiled for aot stats"), QCoreApplication::translate("main", "id")); parser.addOption(moduleIdOption); + QCommandLineOption noAotValidationOption("no-aot-validation"_L1, QCoreApplication::translate("main", "Skips generation of validation code for ahead-of-time generated code")); + parser.addOption(noAotValidationOption); + QCommandLineOption outputFileOption("o"_L1, QCoreApplication::translate("main", "Output file name"), QCoreApplication::translate("main", "file name")); parser.addOption(outputFileOption); @@ -229,12 +232,13 @@ int main(int argc, char **argv) if (target == GenerateCpp) { inputFileUrl = "qrc://"_L1 + inputResourcePath; - saveFunction = [inputResourcePath, outputFileName]( + bool noAotValidation = parser.isSet(noAotValidationOption); + saveFunction = [inputResourcePath, outputFileName, noAotValidation]( const QV4::CompiledData::SaveableUnitPointer &unit, const QQmlJSAotFunctionMap &aotFunctions, const LookupSignatures &lookupSignatures, QString *errorString) { return qSaveQmlJSUnitAsCpp(inputResourcePath, outputFileName, unit, aotFunctions, - lookupSignatures, errorString); + lookupSignatures, noAotValidation, errorString); }; } else { @@ -302,6 +306,8 @@ int main(int argc, char **argv) if (parser.isSet(validateBasicBlocksOption)) cppCodeGen.m_flags.setFlag(QQmlJSAotCompiler::ValidateBasicBlocks); + if (parser.isSet(noAotValidationOption)) + cppCodeGen.m_flags.setFlag(QQmlJSAotCompiler::NoAOTValidation); if (!qCompileQmlFile(inputFile, saveFunction, &cppCodeGen, &error, /* storeSourceLocation */ true)) { |
