aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/v4vm/moth/qv4vme_moth_p.h
blob: cdd5adfaa28782edb9d8c744ddd91c4f36e64ca3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#ifndef QV4VME_MOTH_P_H
#define QV4VME_MOTH_P_H

#include <private/qv4runtime_p.h>
#include "qv4instr_moth_p.h"

namespace QQmlJS {
namespace VM {
    struct Value;
}

namespace Moth {

class VME
{
public:
    static VM::Value exec(VM::ExecutionContext *, const uchar *);

#ifdef MOTH_THREADED_INTERPRETER
    static void **instructionJumpTable();
#endif

private:
    VM::Value run(QQmlJS::VM::ExecutionContext *, const uchar *&code,
            VM::Value *stack = 0, unsigned stackSize = 0
#ifdef MOTH_THREADED_INTERPRETER
            , void ***storeJumpTable = 0
#endif
            );
};

} // namespace Moth
} // namespace QQmlJS

#endif // QV4VME_MOTH_P_H