summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
diff options
context:
space:
mode:
authorKrzysztof Parzyszek <kparzysz@codeaurora.org>2015-03-19 15:18:57 +0000
committerKrzysztof Parzyszek <kparzysz@codeaurora.org>2015-03-19 15:18:57 +0000
commitc6f19333cfcd4225e4371d2d7c76e20afad4619f (patch)
treef6eae6f4b30e9fb55c9d9f8f29a8ae7cdb9cc435 /llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
parent00bdca68399cb56044c3b6c5e268c60b06992463 (diff)
downloadbcm5719-llvm-c6f19333cfcd4225e4371d2d7c76e20afad4619f.tar.gz
bcm5719-llvm-c6f19333cfcd4225e4371d2d7c76e20afad4619f.zip
[Hexagon] ENDLOOP is a non-reversible conditional branch
llvm-svn: 232725
Diffstat (limited to 'llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp')
-rw-r--r--llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp b/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
index 26e0f4bbb8f..0f1973b9f89 100644
--- a/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
+++ b/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
@@ -1083,6 +1083,8 @@ SubsumesPredicate(const SmallVectorImpl<MachineOperand> &Pred1,
//
bool HexagonInstrInfo::
ReverseBranchCondition(SmallVectorImpl<MachineOperand> &Cond) const {
+ if (!Cond.empty() && Cond[0].isMBB())
+ return true;
if (!Cond.empty() && Cond[0].isImm() && Cond[0].getImm() == 0) {
Cond.erase(Cond.begin());
} else {
OpenPOWER on IntegriCloud