Changeset 106680 in vbox for trunk/src/VBox/Disassembler
- Timestamp:
- Oct 25, 2024 9:18:06 AM (6 months ago)
- svn:sync-xref-src-repo-rev:
- 165550
- Location:
- trunk/src/VBox/Disassembler
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Disassembler/DisasmTables-armv8-a64.cpp
r106679 r106680 163 163 164 164 165 /* SBFM/BFM/UBFM */ 166 DIS_ARMV8_DECODE_INSN_CLASS_DEFINE_DECODER(Extract) /** @todo N must match SF, and for sf == 0 -> imms<5> == 0. */ 167 DIS_ARMV8_INSN_DECODE(kDisParmParseSf, 31, 1, DIS_ARMV8_INSN_PARAM_UNSET), 168 DIS_ARMV8_INSN_DECODE(kDisParmParseGprZr, 0, 5, 0 /*idxParam*/), 169 DIS_ARMV8_INSN_DECODE(kDisParmParseGprZr, 5, 5, 1 /*idxParam*/), 170 DIS_ARMV8_INSN_DECODE(kDisParmParseGprZr, 16, 5, 2 /*idxParam*/), 171 DIS_ARMV8_INSN_DECODE(kDisParmParseImm, 10, 6, 3 /*idxParam*/), 172 DIS_ARMV8_DECODE_INSN_CLASS_DEFINE_BEGIN(Extract) 173 DIS_ARMV8_OP(0x13800000, "extr", OP_ARMV8_A64_EXTR, DISOPTYPE_HARMLESS), 174 DIS_ARMV8_DECODE_INSN_CLASS_DEFINE_END(Extract, 0x7fa00000 /*fFixedInsn*/, 175 kDisArmV8OpcDecodeNop, 0, 0); 176 177 165 178 /* 166 179 * C4.1.65 of the ARMv8 architecture reference manual has the following table for the … … 185 198 DIS_ARMV8_DECODE_MAP_ENTRY(MoveWide), 186 199 DIS_ARMV8_DECODE_MAP_ENTRY(Bitfield), 187 DIS_ARMV8_DECODE_MAP_ INVALID_ENTRY /** @todo Extract */200 DIS_ARMV8_DECODE_MAP_ENTRY(Extract) 188 201 DIS_ARMV8_DECODE_MAP_DEFINE_END(DataProcessingImm, RT_BIT_32(23) | RT_BIT_32(24) | RT_BIT_32(25), 23); 189 202 -
trunk/src/VBox/Disassembler/testcase/tstDisasmArmv8-1-asm.S
r106679 r106680 497 497 bics xzr, xzr, xzr, ROR #63 498 498 499 extr wzr, w0, w1, #0 500 extr wzr, w0, w1, #31 501 502 extr xzr, x0, x1, #0 503 extr xzr, x0, x1, #63 504 499 505 ; Memory loads 500 506 ldrb w0, [x28]
Note:
See TracChangeset
for help on using the changeset viewer.