Clear the entering, exiting and internal ranges of a bundle before collecting

ranges for the instruction about to be bundled. This fixes a bug in an external
project where an assertion was triggered due to spurious 'multiple defs' within
the bundle.

Patch by Ivan Llopard. Thanks Ivan!

llvm-svn: 157632
This commit is contained in:
Lang Hames 2012-05-29 18:19:54 +00:00
parent de4ca5b789
commit e256f71937
1 changed files with 3 additions and 0 deletions

View File

@ -1097,6 +1097,9 @@ public:
BundleRanges BR = createBundleRanges(Entering, Internal, Exiting);
Entering.clear();
Internal.clear();
Exiting.clear();
collectRanges(MI, Entering, Internal, Exiting, hasRegMaskOp, OldIdx);
assert(!hasRegMaskOp && "Can't have RegMask operand in bundle.");