aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CodeGen
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2013-01-10 18:42:44 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2013-01-10 18:42:44 +0000
commit4aebce83212d7271454c8767085645fe11054b44 (patch)
tree2756929b0903b8ed95bbc7e5cde2dc57980a3bb5 /lib/CodeGen
parent5e1b31bf5588cd9ea0b16e94fcc1d908e40027e2 (diff)
downloadexternal_llvm-4aebce83212d7271454c8767085645fe11054b44.zip
external_llvm-4aebce83212d7271454c8767085645fe11054b44.tar.gz
external_llvm-4aebce83212d7271454c8767085645fe11054b44.tar.bz2
Allow hasProperty() to be called on bundle-internal instructions.
When calling hasProperty() on an instruction inside a bundle, it should always behave as if IgnoreBundle was passed, and just return properties for the current instruction. Only attempt to aggregate bundle properties whan asked about the bundle header. The assertion fires on existing ARM test cases without this fix. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172082 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen')
-rw-r--r--lib/CodeGen/MachineInstr.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/CodeGen/MachineInstr.cpp b/lib/CodeGen/MachineInstr.cpp
index cdf46b6..df82a17 100644
--- a/lib/CodeGen/MachineInstr.cpp
+++ b/lib/CodeGen/MachineInstr.cpp
@@ -752,6 +752,7 @@ void MachineInstr::addMemOperand(MachineFunction &MF,
}
bool MachineInstr::hasPropertyInBundle(unsigned Mask, QueryType Type) const {
+ assert(!isBundledWithPred() && "Must be called on bundle header");
for (MachineBasicBlock::const_instr_iterator MII = this;; ++MII) {
if (MII->getDesc().getFlags() & Mask) {
if (Type == AnyInBundle)