[all-commits] [llvm/llvm-project] 42d774: [MachineBasicBlock] Skip over debug instructions i...

topperc via All-commits all-commits at lists.llvm.org
Fri Nov 1 14:43:29 PDT 2019


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 42d77461f3298d5b7bf09208d67a3d8bb28df065
      https://github.com/llvm/llvm-project/commit/42d77461f3298d5b7bf09208d67a3d8bb28df065
  Author: Craig Topper <craig.topper at intel.com>
  Date:   2019-11-01 (Fri, 01 Nov 2019)

  Changed paths:
    M llvm/lib/CodeGen/MachineBasicBlock.cpp
    M llvm/test/CodeGen/X86/leaFixup64.mir

  Log Message:
  -----------
  [MachineBasicBlock] Skip over debug instructions in computeRegisterLiveness before checking for begin

If there are debug instructions before the stopping point,
we need to skip over them before checking for begin in order
to avoid having the debug instructions effect behavior.

Fixes PR43758.

Differential Revision: https://reviews.llvm.org/D69606


  Commit: 96bb07662104f175c354ffaa2d58a8f6bb984249
      https://github.com/llvm/llvm-project/commit/96bb07662104f175c354ffaa2d58a8f6bb984249
  Author: Craig Topper <craig.topper at intel.com>
  Date:   2019-11-01 (Fri, 01 Nov 2019)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp

  Log Message:
  -----------
  [TargetLowering] Move the setBooleanContents check on (xor (setcc), (setcc)) == / != 1 -> (setcc) != / == (setcc) to the right place

We need to be checking the value types for the inner setccs not
the outer setcc. We need to ensure those setccs produce a 0/1
value or that the xor is on the i1 type. I think at the time
this code was originally written, getBooleanContents didn't
take any arguments so this was probably correct. But now we can
have a different boolean contents for integer and floating point.

Not sure why the other combines below the xor were also checking
the boolean contents. None of them involve any setccs other than
the outer one and they only produce a new setcc.

Differential Revision: https://reviews.llvm.org/D69480


Compare: https://github.com/llvm/llvm-project/compare/98245d081e72...96bb07662104


More information about the All-commits mailing list