File tree Expand file tree Collapse file tree 2 files changed +8
-5
lines changed
lib/Target/X86/Disassembler
test/MC/Disassembler/X86/apx Expand file tree Collapse file tree 2 files changed +8
-5
lines changed Original file line number Diff line number Diff line change @@ -284,7 +284,10 @@ static int readPrefixes(struct InternalInstruction *insn) {
284
284
// it's not mandatory prefix
285
285
// 3. if (nextByte >= 0x40 && nextByte <= 0x4f) it's REX and we need
286
286
// 0x0f exactly after it to be mandatory prefix
287
- if (isREX (insn, nextByte) || nextByte == 0x0f || nextByte == 0x66 )
287
+ // 4. if (nextByte == 0xd5) it's REX2 and we need
288
+ // 0x0f exactly after it to be mandatory prefix
289
+ if (isREX (insn, nextByte) || isREX2 (insn, nextByte) || nextByte == 0x0f ||
290
+ nextByte == 0x66 )
288
291
// The last of 0xf2 /0xf3 is mandatory prefix
289
292
insn->mandatoryPrefix = byte;
290
293
insn->repeatPrefix = byte;
Original file line number Diff line number Diff line change 21
21
# INTEL: movsxd r17, r16d
22
22
0xd5,0x58,0x63,0xc8
23
23
24
- # ATT: rep
25
- # ATT-SAME : popcntl %r16d, %r17d
26
- # INTEL: rep
27
- # INTEL-SAME : popcnt r17d, r16d
24
+ # ATT-NOT : rep
25
+ # ATT: popcntl %r16d, %r17d
26
+ # INTEL-NOT : rep
27
+ # INTEL: popcnt r17d, r16d
28
28
0xf3,0xd5,0xd0,0xb8,0xc8
29
29
30
30
## MRMSrcRegCC
You can’t perform that action at this time.
0 commit comments