37 QQmlJSAotCompiler::Flags compileFlags,
38 bool &basicBlocksValidationFailed);
43 static BasicBlocks::iterator
44 basicBlockForInstruction(QFlatMap<int, BasicBlock> &container,
int instructionOffset);
45 static BasicBlocks::const_iterator
48 QList<ObjectOrArrayDefinition> objectAndArrayDefinitions()
const;
54 void generate_Jump(
int offset)
override;
55 void generate_JumpTrue(
int offset)
override;
56 void generate_JumpFalse(
int offset)
override;
57 void generate_JumpNoException(
int offset)
override;
58 void generate_JumpNotUndefined(
int offset)
override;
59 void generate_IteratorNext(
int value,
int offset)
override;
60 void generate_GetOptionalLookup(
int index,
int offset)
override;
62 void generate_Ret()
override;
63 void generate_ThrowException()
override;
65 void generate_DefineArray(
int argc,
int argv)
override;
66 void generate_DefineObjectLiteral(
int internalClassId,
int argc,
int args)
override;
67 void generate_Construct(
int func,
int argc,
int argv)
override;
69 enum JumpMode { Unconditional, Conditional };
72 void dumpBasicBlocks();
76 QList<ObjectOrArrayDefinition> m_objectAndArrayDefinitions;
77 bool m_skipUntilNextLabel =
false;
78 bool m_hadBackJumps =
false;