From f2b625ebdb0f8a17644eeda1d3fad182bf3cfb99 Mon Sep 17 00:00:00 2001 From: iximeow Date: Mon, 27 Dec 2021 20:32:34 -0800 Subject: another form of prfm --- src/armv8/a64.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/armv8/a64.rs') diff --git a/src/armv8/a64.rs b/src/armv8/a64.rs index a29c6fb..3aaa7ef 100644 --- a/src/armv8/a64.rs +++ b/src/armv8/a64.rs @@ -7513,7 +7513,7 @@ impl Decoder for InstDecoder { Err(DecodeError::InvalidOpcode), Ok((Opcode::STUR, SizeCode::X)), Ok((Opcode::LDUR, SizeCode::X)), - Err(DecodeError::IncompleteDecoder), // PRFM is not supported yet + Ok((Opcode::PRFM, SizeCode::X)), Err(DecodeError::InvalidOpcode), ]; @@ -7521,7 +7521,11 @@ impl Decoder for InstDecoder { inst.opcode = opcode; inst.operands = [ - Operand::Register(size, Rt), + if size_opc == 0b1110 { + Operand::PrefetchOp(Rt) + } else { + Operand::Register(size, Rt) + }, Operand::RegOffset(Rn, imm9), Operand::Nothing, Operand::Nothing, -- cgit v1.1