mirror of
https://github.com/TomHarte/CLK.git
synced 2025-02-16 18:30:32 +00:00
Document.
This commit is contained in:
parent
106937b679
commit
9d084782ae
@ -15,6 +15,7 @@
|
|||||||
|
|
||||||
namespace InstructionSet::ARM {
|
namespace InstructionSet::ARM {
|
||||||
|
|
||||||
|
/// Holds a single ARM operand, whether a source/destination or immediate value, potentially including a shift.
|
||||||
struct Operand {
|
struct Operand {
|
||||||
enum class Type {
|
enum class Type {
|
||||||
Immediate, Register, RegisterList, None
|
Immediate, Register, RegisterList, None
|
||||||
@ -31,6 +32,8 @@ struct Operand {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/// Describes a single ARM instruction, suboptimally but such that all relevant detail has been extracted
|
||||||
|
/// by the OperationMapper and is now easy to inspect or to turn into a string.
|
||||||
struct Instruction {
|
struct Instruction {
|
||||||
Condition condition = Condition::AL;
|
Condition condition = Condition::AL;
|
||||||
enum class Operation {
|
enum class Operation {
|
||||||
@ -125,6 +128,8 @@ struct Instruction {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/// A target for @c dispatch that merely captures a description of the decoded instruction, being
|
||||||
|
/// able to vend it later via @c last().
|
||||||
template <Model model>
|
template <Model model>
|
||||||
struct Disassembler {
|
struct Disassembler {
|
||||||
Instruction last() {
|
Instruction last() {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user