llvm-6502/lib
Chad Rosier 4823be3be1 [reg scavenger] Fix the isUsed/isAliasUsed functions so as to not report a false
positive.

In this particular case, R6 was being spilled by the register scavenger when it
was in fact dead.  The isUsed function reported R6 as used because the R6_R7
alias was reserved (due to the fact that we've reserved R7 as the FP).  The
solution is to only check if the original register (i.e., R6) isReserved and
not the aliases.  The aliases are only checked to make sure they're available.

The test case is derived from one of the nightly tester benchmarks and is rather
intractable and difficult to reproduce, so I haven't included it.
rdar://12592448


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168054 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-15 18:13:20 +00:00
..
Analysis Add doInitialization and doFinalization methods to ModulePass's, to allow them to be re-initialized and reused on multiple Module's. 2012-11-15 00:14:15 +00:00
Archive Mark checkSignature const, and in turn stop casting away const from 2012-09-05 22:09:23 +00:00
AsmParser Relax the restrictions on vector of pointer types, and vector getelementptr. 2012-11-13 12:59:33 +00:00
Bitcode Relax the restrictions on vector of pointer types, and vector getelementptr. 2012-11-13 12:59:33 +00:00
CodeGen [reg scavenger] Fix the isUsed/isAliasUsed functions so as to not report a false 2012-11-15 18:13:20 +00:00
DebugInfo Rewrite DIContext interface to take an object. Update all callers. 2012-11-12 21:40:38 +00:00
ExecutionEngine Remove DOS line endings. 2012-11-14 20:18:34 +00:00
Linker Move the "findUsedStructTypes" functionality outside of the Module class. 2012-08-03 00:30:35 +00:00
MC Emit relocations from .debug_aranges to .debug_info for asm files 2012-11-14 09:55:38 +00:00
Object s/assert/llvm_unreachable/ 2012-11-14 17:58:11 +00:00
Support Add support for SPIR64 target - the 64bit counterpart of SPIR. 2012-11-15 10:35:47 +00:00
TableGen Remove exception handling usage from tblgen. 2012-10-25 20:33:17 +00:00
Target Use empty parens for empty function parameter list instead of '(void)'. 2012-11-15 16:51:49 +00:00
Transforms Use empty parens for empty function parameter list instead of '(void)'. 2012-11-15 16:51:49 +00:00
VMCore Use empty parens for empty function parameter list instead of '(void)'. 2012-11-15 16:51:49 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile