Jakob Stoklund Olesen 1c062c24ab Fix -widen-vmovs liveness issues.
When widening a copy, we are reading a larger register that may not be
live.  Use an <undef> flag to tell the register scavenger and machine
code verifier that we know the value isn't defined.

We now widen:

  %S6<def> = COPY %S4<kill>, %D3<imp-def>

into:

  %D3<def> = VMOVD %D2<undef>, pred:14, pred:%noreg, %S4<imp-use,kill>

This also keeps the <kill> flag on %S4 so we don't inadvertently kill a
live value in %S5.

Finally, ensure that ARMBaseInstrInfo::setExecutionDomain() preserves
the <undef> flag when converting VMOVD to VORR.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141746 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-12 00:06:23 +00:00
..
2010-11-03 18:21:33 +00:00
2010-10-22 21:55:03 +00:00
2011-04-21 20:16:43 +00:00
2011-03-14 21:05:21 +00:00
2011-07-14 06:23:09 +00:00
2011-03-23 23:34:19 +00:00
2010-10-22 22:04:28 +00:00
2011-07-13 00:42:17 +00:00
2011-03-15 01:49:08 +00:00
2011-04-01 03:36:33 +00:00
2011-07-26 20:49:44 +00:00
2010-11-29 22:39:38 +00:00
2011-03-15 20:47:26 +00:00
2011-06-16 01:24:24 +00:00