diff options
| author | gdkchan <gab.dark.100@gmail.com> | 2018-05-26 17:49:21 -0300 |
|---|---|---|
| committer | gdkchan <gab.dark.100@gmail.com> | 2018-05-26 17:50:47 -0300 |
| commit | 9670c096e410add36314a247b77334c0c1d61256 (patch) | |
| tree | dc66ff6966b5544ee78e45b571c187225f96c35d /ChocolArm64/Instruction | |
| parent | cb1cf489f96b09872f8a9db41226c6f5d1654575 (diff) | |
Initial work to support AArch32 with a interpreter, plus nvmm stubs (not used for now)
Diffstat (limited to 'ChocolArm64/Instruction')
| -rw-r--r-- | ChocolArm64/Instruction/AInst.cs | 14 | ||||
| -rw-r--r-- | ChocolArm64/Instruction/AInstInterpreter.cs | 8 |
2 files changed, 16 insertions, 6 deletions
diff --git a/ChocolArm64/Instruction/AInst.cs b/ChocolArm64/Instruction/AInst.cs index cab597d6..74093536 100644 --- a/ChocolArm64/Instruction/AInst.cs +++ b/ChocolArm64/Instruction/AInst.cs @@ -4,15 +4,17 @@ namespace ChocolArm64.Instruction { struct AInst { - public AInstEmitter Emitter { get; private set; } - public Type Type { get; private set; } + public AInstInterpreter Interpreter { get; private set; } + public AInstEmitter Emitter { get; private set; } + public Type Type { get; private set; } - public static AInst Undefined => new AInst(AInstEmit.Und, null); + public static AInst Undefined => new AInst(null, AInstEmit.Und, null); - public AInst(AInstEmitter Emitter, Type Type) + public AInst(AInstInterpreter Interpreter, AInstEmitter Emitter, Type Type) { - this.Emitter = Emitter; - this.Type = Type; + this.Interpreter = Interpreter; + this.Emitter = Emitter; + this.Type = Type; } } }
\ No newline at end of file diff --git a/ChocolArm64/Instruction/AInstInterpreter.cs b/ChocolArm64/Instruction/AInstInterpreter.cs new file mode 100644 index 00000000..6a855aec --- /dev/null +++ b/ChocolArm64/Instruction/AInstInterpreter.cs @@ -0,0 +1,8 @@ +using ChocolArm64.Decoder; +using ChocolArm64.Memory; +using ChocolArm64.State; + +namespace ChocolArm64.Instruction +{ + delegate void AInstInterpreter(AThreadState State, AMemory Memory, AOpCode OpCode); +}
\ No newline at end of file |
