AArch64FastISel: Use cbz/cbnz to branch on i1
authorMatthias Braun <matze@braunis.de>
Thu, 3 Dec 2015 17:19:58 +0000 (17:19 +0000)
committerMatthias Braun <matze@braunis.de>
Thu, 3 Dec 2015 17:19:58 +0000 (17:19 +0000)
commit23a903a5175908226b6aecc1832d32e820b3f091
tree507d7511cfcc41a9b93e9dc1168d4c9489fcb52d
parent5d94a27cae83d67fa8890f74a03ff22979adaec3
AArch64FastISel: Use cbz/cbnz to branch on i1

In the case of a conditional branch without a preceding cmp we used to emit
a "and; cmp; b.eq/b.ne" sequence, use tbz/tbnz instead.

Differential Revision: http://reviews.llvm.org/D15122

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254621 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/AArch64/AArch64FastISel.cpp
test/CodeGen/AArch64/arm64-fast-isel-br.ll
test/CodeGen/AArch64/fast-isel-branch-cond-mask.ll
test/CodeGen/AArch64/fast-isel-branch-cond-split.ll