[all-commits] [llvm/llvm-project] 78be61: [X86] Add CMOV_VR64 pseudo instruction for MMX. Re...

topperc via All-commits all-commits at lists.llvm.org
Thu Feb 20 20:31:06 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 78be61871704a451a5d9462d7e96ed6c982746d4
      https://github.com/llvm/llvm-project/commit/78be61871704a451a5d9462d7e96ed6c982746d4
  Author: Craig Topper <craig.topper at gmail.com>
  Date:   2020-02-20 (Thu, 20 Feb 2020)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/test/CodeGen/X86/select-mmx.ll

  Log Message:
  -----------
  [X86] Add CMOV_VR64 pseudo instruction for MMX. Remove mmx handling from combineSelect.

The combineSelect code was casting to i64 without any check that
i64 was legal. This can break after type legalization.

It also required splitting the mmx register on 32-bit targets.
It's not clear that this makes sense. Instead switch to using
a cmov pseudo like we do for XMM/YMM/ZMM.




More information about the All-commits mailing list