[all-commits] [llvm/llvm-project] c721bc: [X86] Correct the implementation of ud1(a.k.a. ud2...

topperc via All-commits all-commits at lists.llvm.org
Sat Jun 20 00:03:25 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: c721bc081eabd818990d92be4cb85cf7150b5468
      https://github.com/llvm/llvm-project/commit/c721bc081eabd818990d92be4cb85cf7150b5468
  Author: Craig Topper <craig.topper at intel.com>
  Date:   2020-06-19 (Fri, 19 Jun 2020)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrInfo.td
    M llvm/lib/Target/X86/X86InstrSystem.td
    M llvm/test/MC/Disassembler/X86/x86-16.txt
    M llvm/test/MC/X86/x86-16.s
    M llvm/test/MC/X86/x86-32.s
    M llvm/test/MC/X86/x86-64.s

  Log Message:
  -----------
  [X86] Correct the implementation of ud1(a.k.a. ud2b) instruction.

We were missing the modrm byte this instruction has according
to current Intel SDM. Experiments with gcc indicate that different
modrm values are chosen based on 2 operands so I've added those
as well.

I think our previous implementation was based on an older behavior of
binutils that has since been changed.




More information about the All-commits mailing list