From 4281309f580130c3642d50b79034f0428b662c55 Mon Sep 17 00:00:00 2001 From: iximeow Date: Sun, 2 Aug 2026 23:43:23 +0000 Subject: fix swapped rfe{ia,db} and srs{ia,db} --- src/armv7/thumb.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/armv7') diff --git a/src/armv7/thumb.rs b/src/armv7/thumb.rs index 18b4526..ab3f94b 100644 --- a/src/armv7/thumb.rs +++ b/src/armv7/thumb.rs @@ -613,7 +613,7 @@ pub fn decode_into::Address, ::Word>>(d 0b00 => { // `SRS (Thumb)` (`B9-1990`) // v6T2 - inst.opcode = Opcode::SRS(false, true); // `srsdb` + inst.opcode = Opcode::SRS(true, false); // `srsdb` inst.operands = [ Operand::RegWBack(Reg::from_u8(13), w), Operand::Imm12(lower2[0..4].load::()), // # ? what's the syntax here? #? @@ -710,7 +710,7 @@ pub fn decode_into::Address, ::Word>>(d if rn == 15 { decoder.unpredictable()?; } - inst.opcode = Opcode::RFE(false, true); + inst.opcode = Opcode::RFE(true, false); inst.operands = [ Operand::RegWBack(Reg::from_u8(rn), w), Operand::Nothing, @@ -775,7 +775,7 @@ pub fn decode_into::Address, ::Word>>(d if rn == 15 { decoder.unpredictable()?; } - inst.opcode = Opcode::RFE(true, false); + inst.opcode = Opcode::RFE(false, true); inst.operands = [ Operand::RegWBack(Reg::from_u8(rn), w), Operand::Nothing, -- cgit v1.1