aboutsummaryrefslogtreecommitdiff
path: root/src/armv7/thumb.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/armv7/thumb.rs')
-rw-r--r--src/armv7/thumb.rs55
1 files changed, 55 insertions, 0 deletions
diff --git a/src/armv7/thumb.rs b/src/armv7/thumb.rs
index cba18a4..d4bef7a 100644
--- a/src/armv7/thumb.rs
+++ b/src/armv7/thumb.rs
@@ -1797,6 +1797,39 @@ pub fn decode_into<T: Reader<<ARMv7 as Arch>::Address, <ARMv7 as Arch>::Word>>(d
Operand::Nothing,
];
}
+ 0b00001101 => {
+ // `PACBTI T1`
+ // v8
+ inst.opcode = Opcode::PACBTI;
+ inst.operands = [
+ Operand::Nothing,
+ Operand::Nothing,
+ Operand::Nothing,
+ Operand::Nothing,
+ ];
+ }
+ 0b00001111 => {
+ // `BTI T1`
+ // v8
+ inst.opcode = Opcode::BTI;
+ inst.operands = [
+ Operand::Nothing,
+ Operand::Nothing,
+ Operand::Nothing,
+ Operand::Nothing,
+ ];
+ }
+ 0b00010000 => {
+ // `ESB T1`
+ // v8
+ inst.opcode = Opcode::ESB;
+ inst.operands = [
+ Operand::Nothing,
+ Operand::Nothing,
+ Operand::Nothing,
+ Operand::Nothing,
+ ];
+ }
0b00010100 => {
// `CSDB` (`A8-376`)
// v6T2
@@ -1808,6 +1841,28 @@ pub fn decode_into<T: Reader<<ARMv7 as Arch>::Address, <ARMv7 as Arch>::Word>>(d
Operand::Nothing,
];
}
+ 0b00011101 => {
+ // `PAC T1`
+ // v8
+ inst.opcode = Opcode::PAC;
+ inst.operands = [
+ Operand::Nothing,
+ Operand::Nothing,
+ Operand::Nothing,
+ Operand::Nothing,
+ ];
+ }
+ 0b00101101 => {
+ // `AUT T1`
+ // v8
+ inst.opcode = Opcode::AUT;
+ inst.operands = [
+ Operand::Nothing,
+ Operand::Nothing,
+ Operand::Nothing,
+ Operand::Nothing,
+ ];
+ }
hint => {
// from DDI0406 C.d (v7):
// > Encodings with op1 set to 0b000 and a value of