llvm/lib
Jakob Stoklund Olesen 980daea857 Fix Bug 4657: register scavenger asserts with subreg lowering
When LowerSubregsInstructionPass::LowerInsert eliminates an INSERT_SUBREG
instriction because it is an identity copy, make sure that the same registers
are alive before and after the elimination.

When the super-register is marked <undef> this requires inserting an
IMPLICIT_DEF instruction to make sure the super register is live.

Fix a related bug where a kill flag on the inserted sub-register was not transferred properly.

Finally, clear the undef flag in MachineInstr::addRegisterKilled. Undef implies dead and kill implies live, so they cant both be valid.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77989 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-03 20:08:18 +00:00
..
Analysis Restrict LDA to affine subscripts. 2009-08-03 01:03:48 +00:00
Archive Fix some non-sensical code. 2009-07-13 05:29:34 +00:00
AsmParser Move the metadata constructors back to 2.5 syntax. 2009-07-31 21:35:40 +00:00
Bitcode Move the metadata constructors back to 2.5 syntax. 2009-07-31 21:35:40 +00:00
CodeGen Fix Bug 4657: register scavenger asserts with subreg lowering 2009-08-03 20:08:18 +00:00
CompilerDriver Delete the temp dir even when '--temp-dir' is specified. 2009-07-11 19:27:07 +00:00
Debugger Make the use of const with respect to LLVMContext sane. Hopefully this is the last time, for the 2009-07-01 23:13:44 +00:00
ExecutionEngine llvm_report_error already prints "LLVM ERROR:". So stop reporting errors like "LLVM ERROR: llvm: error:" or "LLVM ERROR: ERROR:". 2009-08-03 13:33:33 +00:00
Linker Move a few more APIs back to 2.5 forms. The only remaining ones left to change back are 2009-07-31 20:28:14 +00:00
MC Change SectionKind to be a property that is true of a *section*, it 2009-08-01 21:11:14 +00:00
Support Remove now unused arguments from TargetRegistry::lookupTarget. 2009-08-03 04:20:57 +00:00
System Fix a race condition in getting the process exit code on Win32. 2009-08-03 05:02:46 +00:00
Target Minor stylistic cleanups in the Blackfin target. 2009-08-03 19:32:30 +00:00
Transforms Make SimplifyDemandedUseBits generate vector constants where 2009-08-03 19:15:42 +00:00
VMCore Add NamedMDNode destructor. 2009-08-03 06:19:01 +00:00
Makefile LLVMC doesn't need ENABLE_PIC to build now. 2009-07-04 03:54:54 +00:00