Usually brconds are fed by compares, but not always, in which case we would miss this fold.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Paths
| Differential D86413
[AArch64][GlobalISel] Optimize away a Not feeding a brcond by using tbz instead of tbnz. ClosedPublic Authored by aemerson on Aug 22 2020, 11:37 PM.
Details Summary Usually brconds are fed by compares, but not always, in which case we would miss this fold.
Diff Detail
Event TimelineHerald added subscribers: danielkiss, hiraditya, kristof.beyls, rovka. · View Herald TranscriptAug 22 2020, 11:37 PM aemerson added a child revision: D86479: [AArch64][GlobalISel] Don't emit a branch for a fallthrough G_BR..Aug 24 2020, 11:24 AM This revision is now accepted and ready to land.Aug 27 2020, 11:03 AM aemerson added a parent revision: D86383: [GlobalISel] Fold xor(cmp(pred, _, _), 1) -> cmp(inverse(pred), _, _).Aug 27 2020, 2:45 PM aemerson added a child revision: D86664: [GlobalISel] Rewrite the elide-br-by-swapping-icmp-ops combine to do less..Aug 28 2020, 11:54 AM aemerson removed a child revision: D86479: [AArch64][GlobalISel] Don't emit a branch for a fallthrough G_BR.. This revision was landed with ongoing or failed builds.Sep 1 2020, 11:06 AM Closed by commit rG5ded4442520d: [AArch64][GlobalISel] Optimize away a Not feeding a brcond by using tbz instead… (authored by aemerson). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 287242 llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
llvm/test/CodeGen/AArch64/GlobalISel/select-brcond-of-not.mir
|
clang-tidy: error: use of undeclared identifier 'm_GXor'; did you mean 'm_GOr'? [clang-diagnostic-error]
not useful