1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 11:42:57 +01:00

All conditional branches are disallowed in IT blocks, not just CBZ/CBNZ.

llvm-svn: 139329
This commit is contained in:
Owen Anderson 2011-09-08 22:48:37 +00:00
parent d7127e0c27
commit 99ad1a853e

View File

@ -429,12 +429,13 @@ ThumbDisassembler::AddThumbPredicate(MCInst &MI) const {
switch (MI.getOpcode()) {
case ARM::tBcc:
case ARM::t2Bcc:
return Success;
case ARM::tCBZ:
case ARM::tCBNZ:
// Some instructions are not allowed in IT blocks.
// Some instructions (mostly conditional branches) are not
// allowed in IT blocks.
if (!ITBlock.empty())
return SoftFail;
return Success;
break;
default:
break;