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!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157632 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Lang Hames 2012-05-29 18:19:54 +00:00
parent e23642916b
commit f905f69668

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.");