[all-commits] [llvm/llvm-project] 4f1555: [LegalizeDAG] Handle NeedInvert when expanding BR_CC

Björn Pettersson via All-commits all-commits at lists.llvm.org
Sat Jan 16 05:40:10 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4f155567317d3187bc18be866b3f3b5352f1bfa5
      https://github.com/llvm/llvm-project/commit/4f155567317d3187bc18be866b3f3b5352f1bfa5
  Author: Bjorn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2021-01-16 (Sat, 16 Jan 2021)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    A llvm/test/CodeGen/PowerPC/legalize-invert-br_cc.ll

  Log Message:
  -----------
  [LegalizeDAG] Handle NeedInvert when expanding BR_CC

This is a follow-up fix to commit 03c8d6a0c4bd0016bdfd1e5.
Seems like we now end up with NeedInvert being set in the result
from LegalizeSetCCCondCode more often than in the past, so we
need to handle NeedInvert when expanding BR_CC.

Not sure how to deal with the "Tmp4.getNode()" case properly,
but current assumption is that that code path isn't impacted
by the changes in 03c8d6a0c4bd0016bdfd1e5 so we can simply move
the old assert into the if-branch and only handle NeedInvert in the
else-branch.

I think that the test case added here, for PowerPC, might have
failed also before commit 03c8d6a0c4bd0016bdfd1e5. But we started
to hit the assert more often downstream when having merged that
commit.

Reviewed By: craig.topper

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




More information about the All-commits mailing list